小弟在製作一個動態網頁,這個網頁的功能是使用者會透過前端拍照並上傳至render後端API服務器裡的Flask應用的app.py檔測試斜視資訊,然後再回傳給前端,我的前端部屬是用netlify部屬前端server也是netlify。上傳是透過netlify funtion訪問render的flask應用,有目前碰到三個問題,第一個問題是我在前端測試上傳鍵時會出現404錯誤Failed to load resource: the server responded with a status of 404 (),第二個問題是在測試netlify funtion的連結時顯示Failed to load resource: the server responded with a status of 500 ()錯誤500而畫面是{"error":"Invalid request body"},第三個問題也是困擾我很久的問題是我在POSTMAN中測試API URL時因為是要用POST請求將前端照片傳給後端API,但是顯示{
"error": "Unsupported Media Type: Did not attempt to load JSON data because the request Content-Type was not 'application/json'."
},很奇怪的是我檢查了所有程式碼都是用method 為POST,然後全部的headers: {
'Content-Type': 'application/json',
'Authorization': '70bdf7dde1abcefebd3f83b09656e340'
},到底是甚麼問題這已經困擾三天了
恭喜你
你已經快要成功了
過程如下
HTTP 404 - Not found 連url都設錯,找不到api入口
HTTP 500 - Internal server error, api 無法處理也不知道原因,只好回覆500
HTTP 415 - API 無法處理但知道原因, 原因是unsupported media type
既然你都用postman了
除了content-type設為application/json以外
你可以自己確認post到api的格式是不是正確的json格式資料
Good luck
一步一步來,首先需要排除任何Security因素,因為我們不知道後端有做甚麼處理
第一個問題出現HTTP 404 : 先確認用POSTMAN呼叫也是404嗎? 404很單純是呼叫的API路徑錯了,嘗試多次無果後,建議直接在最外面做一個單純的API試試看,還是有問題建議看看Security相關設定
第二個問題出現HTTP 500但會吐error code : 感覺Content-Type的問題,請嘗試用POSTMAN呼叫,並確認Bady是raw和JSON
第三個問題,你呼叫時"照片"是有序列化了嗎?