метод не допускается ошибка при отправке запроса в колбу - PullRequest
0 голосов
/ 13 декабря 2018

Я получаю эту ошибку: "Метод не разрешен для запрошенного URL", когда я пытаюсь отправить запрос.

Вот мой код Python:

from flask import Flask,render_template,request
import requests
api_address='http://api.openweathermap.org/data/2.5/weather?appid=014093f04f1d04c9e512539a36d4aaa9&q='
app=Flask(__name__)

@app.route('/')
def home():
    return render_template('home.html')

@app.route('/weather',methods=['POST'])
def weather():
        city=request.form['city_name']
        url=api_address + city
        json_data=requests.get(url).json()
        temp_k=float(json_data['main']['temp'])
        temp_c=temp_k-273.15
        return render_template("weather.html",temp=temp_c)

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

ВотHTML-код для «home.html»:

<!DOCTYPE html>
<html>
<body>
    <p>
        <form action='http://127.0.0.1:5000/' method="post">
        City Name: <input type="text" name="city_name">  <br/>
        <input type="submit" name="form" value="Submit">
        </form>
    </p>
</body>
</html>

HTML-код для «weather.html»:

<!DOCTYPE html>
<html>
<body>
    <h1>Temperature: {{temp}} degree celcius</h1>
    <h1>Condition: {{desc}}</h1>
</body>
</html>

Что мне делать ???

1 Ответ

0 голосов
/ 14 декабря 2018

Вы публикуете на http://127.0.0.1:5000/ вместо /weather

Попробуйте это:

<!DOCTYPE html>
<html>
<body>
    <p>
        <form action='/weather' method="post">
        City Name: <input type="text" name="city_name">  <br/>
        <input type="submit" name="form" value="Submit">
        </form>
    </p>
</body>
</html>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...