私はウェブサイト開発の初心者です。私は React-Redux と Python をバックエンド (Falcon フレームワーク) として使用しています。
1) Dispatch to POST を使用して、frontEnd から formData() を受け取ります。
私のディスパッチコード:
this.props.dispatch({type: ActionTypes.FILE_UPLOAD_REQUEST, email: this.state.email, file: this.state.policyFile});
ミドルウェアを使用して、関数 POST を呼び出すだけです。
var result = yield call(Atlas.uploadFile, action.email, action.file);
そして私のフェッチ機能:
export const uploadFile = (email, file) => {
console.log(file);
return fetch(`${BASE_URL}/v1/files/${email}/policies`, {
method: 'POST',
body: file,
headers:{}
})
.then(response => response.json())
}
ファルコン API を使用して、私のバックエンド側:
def on_post(self, req, resp, email):
local_path = create_local_path(req.url, req.content_type)
with open(local_path, 'wb') as temp_file:
body = req.stream.read()
temp_file.write(body)
問題は、temp_file が作成されましたが、破損しており、拡張子を txt ファイルに変更した後です。コンピューターだけが理解できる奇妙なコードで書かれているはずです。しかし、ファイル全体を破損させるいくつかの行があります。助けてください。これは、次のような txt ファイルです。
------WebKitFormBoundaryQXmL1AgwA112xzkA
Content-Disposition: form-data; name="file"; filename="baboon.jpg"
Content-Type: image/jpeg
ˇÿˇ‡JFIFˇ€Ñ ( %!1"%)+...383-7(-.+
-% - - - - - - - -。 - - - - - - - - - - - - - - 7 - - -- ˇ¿„フィ"ˇƒˇƒ>!1AQ"aqÅë°2B±¡R—·#brÒÇí¢$3Scˇƒˇƒ'!1QAa"#2BqÅˇ⁄?“G ÷=`^— Á»÷$ìØxıXÄ'Å '‚ 5kÔVãW¶±ÈK@¡tq]~¸¢J^dö±“≈B–Ba.'QoQ∏0dúC•,nı^⁄•1BR¢âò ´Ô¨C⁄ƒXΩ¡ ¨Eb & and keep going
最初の 3 行を見ると、ファイルが破損しています。
何か案が ?