2016-09-25 15 views
2

環境
私はAppEngine Cloud EndpointsをBootstrap JavaScript UIとGoogle SQL Datastoreで実行しています。問題
Javascriptがgapi.client.loadそれが404 API Explorerの作品を取得し、ローカルで実行したときにJavaScriptが動作する呼び出すGoogle Cloud Endpoints API取得404

...ちょうど私が手にJavaScriptでAPIをロードしようとしています失敗。

GET https://MyAppID.appspot.com/_ah/api/discovery/v1/apis/myAP…%2Cversion%2CrootUrl%2CservicePath%2Cresources%2Cparameters%2Cmethods&pp=0 404  () 
zu @ cb=gapi.loaded_0:83 
n @ cb=gapi.loaded_0:83C 
u @ cb=gapi.loaded_0:83 
(anonymous function) @ cb=gapi.loaded_0:84 
g @ cb=gapi.loaded_0:55 
c @ cb=gapi.loaded_0:46 

それはそれはそれはロードされませんでしたAPI内のメソッドを見つけることができないので、「プロパティを読み取ることができません」の別の例外が続いています:それはChromeで表示されるよう

はここでエラーです。

コード

私のindex.htmlページのコード:

​​

私はそれが正しいことだと思うので、私はまた私のappengine.xmlを含めるつもりです:

<?xml version="1.0" encoding="utf-8"?> 
<appengine-web-app xmlns="http://appengine.google.com/ns/1.0"> 
<application>MyAppID</application> 
<version>1</version> 
<threadsafe>true</threadsafe> 
<use-google-connector-j>true</use-google-connector-j> 

<system-properties> 
    <property name="java.util.logging.config.file" value="WEB-INF/logging.properties"/> 
</system-properties> 
</appengine-web-app> 

と私のweb.xml:

<?xml version="1.0" encoding="utf-8" standalone="no"?><web-app xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.5" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"> 
<servlet> 
    <servlet-name>SystemServiceServlet</servlet-name> 
    <servlet-class>com.google.api.server.spi.SystemServiceServlet</servlet-class> 
    <init-param> 
     <param-name>services</param-name> 
     <param-value>com.lthoi.myAPI</param-value> 
    </init-param> 
</servlet> 
<servlet-mapping> 
    <servlet-name>SystemServiceServlet</servlet-name> 
    <url-pattern>/_ah/spi/*</url-pattern> 
</servlet-mapping> 
<welcome-file-list> 
    <welcome-file>index.html</welcome-file> 
</welcome-file-list> 
</web-app> 

誰かがどこにいてもエラーが考えられると思う人は、他のファイルを貼り付けることができます。

+0

アプリログで、 '/ _ah/spi/BackendService.getApiConfig'または'/_ah/spi/BackendService.logMessages'のリクエストを確認してください。エラーがある場合は修正する必要があります。 – saiyr

答えて

0

私はあなたと同じ問題を抱えています。 https://github.com/google/google-api-javascript-client/issues/147

答えとしてポストを置くための(SRY、ではない:それについて、以前の記事へのリンク

... Googleは今かなりの時間のために、この問題が発生しているWebアプリケーションのエンドポイントとのグリッチを持っているようですコメント、ちょうどアカウントを作成しました)

+0

私の問題はそれとは異なりました。私はその問題に気づいた。 –

0

gapi.client.loadは、APIに関するメソッド情報を取得するための検出をクエリします(404に示すURLの検出部分を参照)。現在、クラウドエンドポイントでは検出はサポートされていません。

回避するには、APIを直接呼び出すことができます(実際にはこれが機能するかどうかはわかりません)。例えば

gapi.client.request({ 
    // Use your own service address, URI path, and query parameters. 
    'root': 'https://your-domain.appspot.com', 
    'path': '_ah/api/foo/bar', // use your own service path 
    'params': { 
    "foo": "bar" 
    } 
}).then(
    function(resp) { 
    console.log(resp); 
    }, 
    function(err) { 
    console.log(err); 
}); 

希望します。

(この応答の前の編集でCORS機能は、実験的な文書化されていないし、サポートされていないですが、デバッグ目的のために、この答えに使用されたことに注意してください。CORSを有効にするには、行が削除されました。)

+0

あなたのお手伝いをしてくれてありがとう、上記を参照してください、私の問題はもう少し基本的だった(貧しい大文字化) –

0

ので、ここの問題は、残念ながら大文字の1つでした。私は正しいURLを持っていましたが、MyAPI.javaで書いたように 'MyAPI'の代わりに 'myAPI'を読み込もうとしました。この場合、アノテーションの値であり、クラス名ではないことに注意してください。うまくいけば、これは私と同じくらいばかげた人を見つける!

関連する問題