2017-02-18 18 views
5

Quickstartの手順を実装しています。Google AppEngineエンドポイントエラー:サービス設定を取得できませんでした(ステータスコード404)

これについては、another questionがありました。 app.yamlのenv_variablesセクションにENDPOINTS_SERVICE_NAMEENDPOINTS_SERVICE_VERSIONの正しい値があることを再度確認しました。

../_ah/api/explorerに「サービス」の下にエンドポイントが表示されません。

このエラーとはどのようなものですか?

エラーログは示しています。予想通り

(/base/data/home/runtimes/python27_experiment/python27_lib/versions/1/google/appengine/runtime/wsgi.py:263) 
Traceback (most recent call last): 
    File "/base/data/home/runtimes/python27_experiment/python27_lib/versions/1/google/appengine/runtime/wsgi.py", line 240, in Handle 
    handler = _config_handle.add_wsgi_middleware(self._LoadHandler()) 
    File "/base/data/home/runtimes/python27_experiment/python27_lib/versions/1/google/appengine/runtime/wsgi.py", line 299, in _LoadHandler 
    handler, path, err = LoadObject(self._handler) 
    File "/base/data/home/runtimes/python27_experiment/python27_lib/versions/1/google/appengine/runtime/wsgi.py", line 85, in LoadObject 
    obj = __import__(path[0]) 
    File "/base/data/home/apps/s~test-app-129421/20170217t185546.399267289806711006/main.py", line 103, in <module> 
    api = endpoints.api_server([EchoApi]) 
    File "/base/data/home/apps/s~test-app-129421/20170217t185546.399267289806711006/lib/endpoints/apiserving.py", line 520, in api_server 
    controller) 
    File "/base/data/home/apps/s~test-app-129421/20170217t185546.399267289806711006/lib/google/api/control/wsgi.py", line 121, in add_all 
    a_service = loader.load() 
    File "/base/data/home/apps/s~test-app-129421/20170217t185546.399267289806711006/lib/google/api/control/service.py", line 110, in load 
    return self._load_func(**kw) 
    File "/base/data/home/apps/s~test-app-129421/20170217t185546.399267289806711006/lib/google/api/config/service_config.py", line 78, in fetch_service_config 
    _log_and_raise(Exception, message_template.format(status_code)) 
    File "/base/data/home/apps/s~test-app-129421/20170217t185546.399267289806711006/lib/google/api/config/service_config.py", line 126, in _log_and_raise 
    raise exception_class(message) 
Exception: Fetching service config failed (status code 404) 

答えて

1

404で失敗しましたサービスの設定を取得した場合は、その後、gcloud service-management deployステップはおそらく動作しませんでした。私はそのステップをやり直し、すべてが正しく構成されていることを確認し、コマンドがエラーなしで終了することを確認します。

+0

ありがとうBrad。私はそのステップのログを調べます。 これを修正する方法を探している人は、テンプレートとして別の作業例を使用して問題に近づいてしまい、その問題を解決することができました。 – user362953

4

私は403を除いて同じ例外トレースを持っていました。希望は私が持っていたのと同じ不満を持っている他の人にとって有益です。

Exception: Fetching service config failed (status code 403)

私はようやく私のapp.yamlで、それはGITクローン

ENDPOINTS_SERVICE_NAME: echo-api.endpoints.[YOUR-PROJECT-ID].cloud.goog

からこれを持っていたことが分かったとクイックスタートのみYOUR-PROJECT-IDを置き換えるために私を指示しました。

私はあなただけのこれらの手順を実行する必要も.appspot.comが

+0

入力いただきありがとうございます。私の場合、私は正しいエンドポイントのパスを持っていませんでした。 – user362953

+1

.cloud.googを.appspot.comに変更すると、私の問題が解決しました。ありがとう。 –

+0

彼らのドキュメントはしばらくfubarでした。これはデバッグにはかなりひどいものでした。 – the0ther

0

で.cloud.goog交換しました:

  1. は、次のコマンドを実行して、サービス構成のIDを表示します。

    gcloud service-management configs list --service=echo-api.endpoints.[PROJECT-ID].cloud.goog 
    
  2. [PROJECT-ID]をプロジェクトIDに置き換えます。角かっこは含めないでください。

  3. 編集のpython-DOCS-サンプル/ AppEngineの/標準/エンドポイント・フレームワーク-V2 /エコーディレクトリ内のapp.yamlファイル、およびenv_variablesセクションで次のように変更します。

    env_variables: 
        # Replace with your endpoints service name. 
        ENDPOINTS_SERVICE_NAME: "echo-api.endpoints.[PROJECT-ID].cloud.goog" 
        # Replace with the version Id of your uploaded Endpoints service. 
        ENDPOINTS_SERVICE_VERSION: "[YOUR-SERVICE-CONFIG-ID]" 
    
  4. を前の手順で[PROJECT-ID]をプロジェクトIDに、[YOUR-SERVICE-CONFIG-ID]をサービス構成IDに置き換えます。角かっこは含めないでください。たとえば:

    env_variables: 
        # Replace with your endpoints service name. 
        ENDPOINTS_SERVICE_NAME: "echo-api.endpoints.example-project.cloud.goog" 
        # Replace with the version Id of your uploaded Endpoints service. 
        ENDPOINTS_SERVICE_VERSION: "2016-12-14r1" 
    

あなただけの最初のコマンドで示されたオプションのいずれかを選択する必要があります。

1

私はアプリコールにmyapp

まずショーサービスがあります。

D:\projects\barcode\ebk>gcloud service-management configs list --service=myapp.appspot.com 
CONFIG_ID  SERVICE_NAME 
2017-06-29r3 myapp.appspot.com 
2017-06-29r2 myapp.appspot.com 
2017-06-29r1 myapp.appspot.com 
2017-06-29r0 myapp.appspot.com 

あなたは結果の最初の行を見ることができるが2017-06-29r3 myapp.appspot.com、編集app.yamlを次のとおりです。

env_variables: 
    # The following values are to be replaced by information from the output of 
    # 'gcloud service-management deploy swagger.json' command. 
    ENDPOINTS_SERVICE_NAME: myapp.appspot.com 
    ENDPOINTS_SERVICE_VERSION: 2017-06-29r3 

これは私の作品

関連する問題