Ich bin mit einem Problem in Endpunkt konfrontiert. Ich verwende Google App Engine auf dem lokalen Computer. Ich versuche, einen Endpunkt api zu machen. Die API wird erfolgreich erstellt, aber wenn ich den Explorer öffne und meine API auswähle, geben Sie einige Parameter ein. Es gibt keine Antwort zurück. Als Reaktion sagte es 404 Google App Engine Endpunkte API Python
hier nicht
gefunden ist der Code:api.py
import endpoints
import protorpc
from ModelClasses import test
import main
@endpoints.api(name="test",version="v1",description="testingapi",hostname="login-test-1208.appspot.com")
class testapi(protorpc.remote.Service):
@test.method(name="userinsert",path="userinsert",http_method="POST")
def userinsert(self,request):
qr = test()
qr.user = request.user
qr.passw = request.passw
qr.put()
return qr
app = endpoints.api_server([testapi],restricted=False)
ModelClasses.py
from endpoints_proto_datastore.ndb import EndpointsModel
from google.appengine.ext import ndb
class test(EndpointsModel):
user = ndb.StringProperty(required=True)
passw = ndb.StringProperty(required=True)
app.yaml
application: ID
version: 1
runtime: python27
api_version: 1
threadsafe: yes
handlers:
- url: /favicon\.ico
static_files: favicon.ico
upload: favicon\.ico
- url: /static
static_dir: static
- url: /stylesheets
static_dir: stylesheets
- url: /(.*\.js)
mime_type: text/javascript
static_files: static/\1
upload: static/(.*\.js)
- url: /_ah/spi/.*
script: api.app
libraries:
- name: webapp2
version: latest
- name: jinja2
version: latest
- name: endpoints
version: latest
- name: pycrypto
version: 1.0
Sie können die Anfrage und Antwort in Bildern.
Jede Hilfe wäre willkommen.
Nur um zu verdeutlichen: Testen Sie die API, die auf localhost ausgeführt wird, oder haben Sie die API bereits für App Engine bereitgestellt? Wenn Sie auf localhost laufen, sollten Sie den Parameter 'hostname' entfernen, der sowieso optional ist, um sicherzustellen, dass die Anfragen tatsächlich an localhost gesendet werden. – Scarygami
Vielen Dank für Ihre Antwort, ich verwende es auf localhost. –
Lass mich das versuchen. –