带烧瓶的POST 405(不允许使用方法)(python和vuejs)

时间:2020-01-31 05:41:59

标签: python vue.js flask cors axios

我正在尝试发布,但收到错误405方法。 我的服务器运行良好。是否需要在python中添加更多详细信息?

这是我使用flask的python代码。

from flask import Flask
from flask_restful import Resource, Api
from flask_cors import CORS

app = Flask(__name__)
CORS(app)
api = Api(app)


class HelloWorld(Resource):
    def get(self):
        return {'hello': 'world'}

api.add_resource(HelloWorld, '/')

if __name__ == '__main__':
    app.run(debug=True)

在vue代码中是

axios({
                            method: 'post',
                            url: 'http://127.0.0.1:5000/',
                            data: {
                                name: this.name,
                                description: this.description
                            },
                            headers: {
                                'Content-Type': 'application/x-www-form-urlencoded',
                            },
                        })
                        .then(function (response) {
                            console.log(response);
                        })
                        .catch(function (error) {
                            console.log(error);
                    });

2 个答案:

答案 0 :(得分:1)

这是因为您在尝试访问URL来访问该视图时正在从前端请求“ POST”。并且您还没有将任何方法定义为post。

尝试在您的课程中点击“获取”或定义“发布”方法。

答案 1 :(得分:0)

尝试扩展您的类以使其也包含POST方法,例如g。

def post(self, name, description):
    return {'hello': 'world'}