Я пытаюсь создать приложение UWP, используя C #.И я также создаю успокоительный веб-API, используя колбу на другом устройстве (то есть Raspberry Pi).Но когда я попытался загрузить изображение из приложения UWP в raspberry pi через API, raspberry pi не получил файл, хотя запрос казался успешным.
, поэтому после запуска веб-API на raspberryпи, а затем запустив приложение UWP на Windows 10, я получил это возвращение: «нет файла».
Это код для моего приложения UWP
public async void Upload_FileAsync(string WebServiceURL, string
FilePathToUpload){
IStorageFile storageFile = await
StorageFile.GetFileFromPathAsync(FilePathToUpload);
IRandomAccessStream stream = await
storageFile.OpenAsync(FileAccessMode.Read);
HttpStreamContent streamfile = new HttpStreamContent(stream);
HttpMultipartFormDataContent httpContents = new
HttpMultipartFormDataContent();
httpContents.Headers.ContentType.MediaType = "multipart/form-data";
httpContents.Add(streamfile, "file");
var client = new HttpClient();
HttpResponseMessage result = await client.PostAsync(
new Uri(WebServiceURL), httpContents);
string stringReadResult = await result.Content.ReadAsStringAsync();
textBox.Text = stringReadResult;
}
Вот как я называюfunction
Upload_FileAsync("http://192.168.0.111:5000/upload",
"c:\\pictures\\testImage3.jpg");
Это код для отдыха API
from flask import Flask
from flask_restful import Resource, Api, reqparse
import werkzeug, os
app = Flask(__name__)
api = Api(app)
UPLOAD_FOLDER = 'static/img'
parser = reqparse.RequestParser()
parser.add_argument('file',
type=werkzeug.datastructures.FileStorage,
location='files')
class PhotoUpload(Resource):
def post(self):
data = parser.parse_args()
if data['file'] == None:
return "no file"
photo = data['file']
if photo:
filename = 'received.png'
photo.save(os.path.join(UPLOAD_FOLDER, filename))
return "file uploaded"
api.add_resource(PhotoUpload, '/upload')
if __name__ == '__main__':
app.run(debug=True, host='0.0.0.0')
Я ожидаю, что: успешно загрузить изображение в Raspberry Pi через API и сохранить его на Raspberryчисло Пи.Но фактический вывод - «нет файла».
И распечатка на Raspberry Pi была такой:
[27/Jan/2019 17:18:02] "POST /upload HTTP/1.1" 200 -
, поэтому кажется, что запрос был в порядке, но файл не был в запросе.