How to solve Flask/Heroku Error: “Method Not Allowed The method is not allowed for the requested URL”
How to solve Flask/Heroku Error: “Method Not Allowed The method is not allowed for the requested URL”
我正在使用 flask、heroku 和 flutter,但是当我调用 url 时出现以下错误。这是我的 app.py:
代码
from flask import Flask, jsonify, request
import pandas as pd
import numpy as np
import joblib
import traceback
from flask_restful import reqparse
app = Flask(__name__)
"""@app.route("/", methods=['GET'])
def hello():
return "hey"""
@app.route('/', methods=['POST'])
def predict():
lr = joblib.load("model.pkl")
if lr:
try:
json = request.get_json()
model_columns = joblib.load("model_cols.pkl")
temp=list(json[0].values())
vals=np.array(temp)
prediction = lr.predict(temp)
print("here:",prediction)
return jsonify({'prediction': str(prediction[0])})
except:
return jsonify({'trace': traceback.format_exc()})
else:
return ('No model here to use')
if __name__ == '__main__':
app.run(debug=True)
它已经在 Heroku 应用程序中。 heroku 的 link 如下:https://myappflutterflask.herokuapp.com/
看起来您在程序中公开了 POST 方法,但使用 GET 访问它(可能通过网络浏览器)。
您可能需要使用不同的客户端进行测试:例如浏览器插件、Postman、curl。
我正在使用 flask、heroku 和 flutter,但是当我调用 url 时出现以下错误。这是我的 app.py:
代码from flask import Flask, jsonify, request
import pandas as pd
import numpy as np
import joblib
import traceback
from flask_restful import reqparse
app = Flask(__name__)
"""@app.route("/", methods=['GET'])
def hello():
return "hey"""
@app.route('/', methods=['POST'])
def predict():
lr = joblib.load("model.pkl")
if lr:
try:
json = request.get_json()
model_columns = joblib.load("model_cols.pkl")
temp=list(json[0].values())
vals=np.array(temp)
prediction = lr.predict(temp)
print("here:",prediction)
return jsonify({'prediction': str(prediction[0])})
except:
return jsonify({'trace': traceback.format_exc()})
else:
return ('No model here to use')
if __name__ == '__main__':
app.run(debug=True)
它已经在 Heroku 应用程序中。 heroku 的 link 如下:https://myappflutterflask.herokuapp.com/
看起来您在程序中公开了 POST 方法,但使用 GET 访问它(可能通过网络浏览器)。
您可能需要使用不同的客户端进行测试:例如浏览器插件、Postman、curl。