【发布时间】:2020-05-26 15:34:22
【问题描述】:
我创建了一个简单的 Keras 模型并使用 Flask 将其实现到 API,不幸的是我收到了如下所示的错误:
C:\Users\callu\OneDrive\Documents\Keras>curl -d "{"9","7","9","5","7","6","0","4","6","0","4","7","0","7"}" -H "Content-Type: application/json" -X POST http://localhost:5000
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<title>400 Bad Request</title>
<h1>Bad Request</h1>
<p>Failed to decode JSON object: Expecting property name enclosed in double quotes: line 1 column 2 (char 1)</p>
我尝试用 " 或 ' 切换数据的排列,但没有运气(我不是 JSON 专家,所以一直在关注在线教程)
这里是 curl 命令:
curl -d "{"9","7","9","5","7","6","0","4","6","0","4","7","0","7"}" -H "Content-Type: application/json" -X POST http://localhost:5000
pause
这里是 Python 代码:
from math import expm1
import joblib
import numpy as np
from flask import Flask, jsonify, request
from tensorflow import keras
from keras.models import load_model
from keras.models import model_from_json
import pandas as pd
app = Flask(__name__)
app.config["DEBUG"] = True
json_file = open('CatModel1.json', 'r')
loaded_model_json = json_file.read()
json_file.close()
loaded_model = model_from_json(loaded_model_json)
# load weights into new model
loaded_model.load_weights("CatModel1.h5")
print("Model Loaded")
@app.route("/", methods=["POST"])
def index():
input = request.json
prediction = loaded_model.predict(input)
return jsonify({"Taste": str(df)})
app.run()
【问题讨论】:
标签: python json curl flask keras