Запрос колбы возвращается 404 не найден - PullRequest
0 голосов
/ 24 октября 2018

Я использую Flast Restplus для своего API и работаю над документацией Swagger.Я разделил API на несколько пространств имен, и мне трудно получить правильный URL:

activity.py:

activities_api = Namespace("activities", description="activities of the company", path='/')

class Activity(Resource):
    def get(self):
        pass
    @activities_api.doc(params={'name': 'activity name'})
    def post(self):
        pass 
    @activities_api.doc(params={'ID': 'activity ID'})       
    def delete(self, activity_id):   
        pass          
    @activities_api.doc(params={'ID': 'ID de l\'activité'})  
    def put(self, activity_id):
       pass   

 activities_api.add_resource(Activity, '/activities', endpoint='/') 

api.py:

from activities import activities_api
app = Flask( __name__)
api = Api(app, prefix='/v1/', default = None, title='API', version='1.0', catch_all_404s=True)
api.add_namespace(activities_api)

На домашней странице я получаю следующие пути:

PUT
/v1/activities
POST
/v1/activities
DELETE
/v1/activities
GET
/v1/activities

Когда я заворачиваю GET в / v1 /действия, которые я получаю:

"GET /v1/activities / HTTP/1.1" 404 -

Должен ли я использовать blueprints с Namespaces?Это структура моего API:

app.py
__init__.py
activities.py

просто, как это, но маршруты неверны.

1 Ответ

0 голосов
/ 24 октября 2018

Я думаю, что есть только небольшая ошибка.

Вот эта строка:

api = Api(app, prefix='/v1/', default = None, title='API', version='1.0', catch_all_404s=True)

Вместо того, чтобы сказать prefix='/v1/', попробуйте prefix='/v1'.Поскольку при добавлении дополнительных / в конце URL-адрес будет указывать на /v1//activities.

...