1
resposta

Erro 405METHOD NOT ALLOWED

Tanto no postman quanto na url da aplicação, aparece esse erro 405. Eu baixei o arquivo pronto disponibilizado pela alura, e mesmo assim o erro persistiu.

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

1 resposta

Olá Luana, tudo bem ? Espero que sim.

Esse erro está aparecendo porque o Postman está utilizando o método HTTP POST, mas implementamos apenas o método GET para o endpoint sentimento.

@app.route('/sentimento/<frase>')
@basic_auth.required
def sentimento(frase):
    tb = TextBlob(frase)
    tb_en = tb.translate(to='en')
    polaridade = tb_en.sentiment.polarity
    return "polaridade: {}".format(polaridade)

Então no Postman devemos selecionar o método HTTP GET.

Do lado da URL no Postman temos apenas o método HTTP GET selecionado

Já o endpoint cotacao utilizada o método POST, definimos isso no código, no atributo methods.

@app.route('/cotacao/', methods=['POST'])
def cotacao():
    dados = request.get_json()
    dados_input = [dados[col] for col in colunas]
    preco = modelo.predict([dados_input])
    return jsonify(preco=preco[0])

Então no Postman devemos usar o método POST na opção da requisição.

Do lado da URL no Postman temos apenas o método HTTP POST selecionado

Espero ter ajudado e qualquer duvida não hesite em perguntar.

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!