Bonjour,
je suis en train d'apprendre le python, l'utilisation de Google App Engine (GAE) pour faire une API dans le but d'apprendre à faire des appli iphone et android. Je fais ca en dehors du taf ou je suis ingénieur de dev LAMP.
Je rencontre quelques soucis avec 2 fonctions. Voici le code de l'une d'elle. L'autre est quasiment la même juste le tri diffère.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | GET_PHOTO_TOP_TEN_NOTE_RESOURCE = endpoints.ResourceContainer( message_types.VoidMessage, cursor=messages.StringField(1, variant=messages.Variant.STRING) ) @endpoints.method(GET_PHOTO_TOP_TEN_NOTE_RESOURCE, PhotoCollection, path='listPhotosTopTenNote/{cursor}', http_method='GET',name='photos.listPhotosTopTenNote') def listPhotosTopTenNote(self, request): photos_query = Photo.query().order(-Photo.soCute) curs = Cursor(urlsafe=request.cursor) listPhotos, next_curs, more = photos_query.fetch_page(2, start_cursor=curs) listTmp=[] for photoTmp in listPhotos: dateUpload=time.mktime(datetime.now().timetuple()) photoWSTmp=PhotoWS(category=photoTmp.category, name=photoTmp.name, owner=photoTmp.owner, ownerId=1, title=photoTmp.title, dateUpload=dateUpload,description=photoTmp.description, soCute=photoTmp.soCute, notSoCute=photoTmp.notSoCute) listTmp.append(photoWSTmp) linkNext="" if more and next_curs: linkNext = next_curs.urlsafe() return PhotoCollection(items = listTmp, linkNext=linkNext) |
Quand je vais sur l'url de l'explorer (http://localhost:8080/_ah/api/explorer) je peux saisir un cursor, vu que j'ai mis ca en paramètre du endPoint. Ce que je ne fait pas puisque au début il n'y en a pas. Donc je valide directement le truc et la ca me met une erreur 404. Alors que si je prend l'url : http://localhost:8080/_ah/api/socute/v1/listPhotoLastTen/ (vous noterez que aucun cursor n'est mentionné ici non plus) et que je la colle dans le navigateur j'ai bien le résultat attendu.
Vous avez déjà eu le soucis? On dirait qu'il y a une différence entre le rendu via l'explorer de google et le rendu direct en http.
Merci.