1
私は私のiOSコードから送信した画像をFlaskに届かせることができません。私は、問題がiOS側かフラスコ側から来ているかどうかは完全にはわかりませんが、画像がiOS側で正しくエンコードされていない可能性があります。SwiftのNSURLSessionを使用してフラスコサーバーに画像をアップロードする
スウィフトコード:
func uploadImage(image: UIImage) -> Void{
//Convert the image to a data blob
guard let png = UIImagePNGRepresentation(image) else{
print("error")
return
}
//Set up a network request
let request = NSMutableURLRequest()
request.HTTPMethod = "POST"
request.URL = NSURL(string: "http://127.0.0.1:5000/")
request.setValue("application/x-www-form-urlencoded", forHTTPHeaderField: "Content-Type")
request.setValue("\(png.length)", forHTTPHeaderField: "Content-Length")
request.HTTPBody = png
// Figure out what the request is making and the encoding type...
//Execute the network request
let upload = NSURLSession.sharedSession().uploadTaskWithRequest(request, fromData: png) { (data: NSData?, response: NSURLResponse?, error: NSError?) -> Void in
//What you want to do when the upload succeeds or fails
}
upload.resume()
}
フラスココード:
@app.route('/')
def projects():
if request.method == "POST":
file = request.files['file']
if file:
img = Image.open(file)
img.show()
return render_template("home.html")
ありがとう!