我使用的是播放/斯卡拉的Web應用程序和API階,目前在本地主機上的兩個不同端口上運行簡單:9000和本地主機:8080分別。我有fine-uploader.com網站文檔中的基本頁面,以及Play中構建的簡單測試頁面。 (FWIW,我不認爲上述是相關的)FineUploader未能解析傳入的JSON
當我發佈文件,分塊與否,Fine上傳從API和有效的JSON接收200,但JSON.parse返回一個失敗。精細上傳器的日誌記錄如下。如果我拿這個輸出並運行它(在控制檯中)
JSON.parse(JSON.stringify(json))
返回一個有效的對象。我不能只JSON.parse(json)
直接在瀏覽器工具,B/C已建好的對象。我通過console.log'ing typeOf json
在qq.parseJson方法檢查了類型,它返回string
,所以不需要轉換,儘管我已經嘗試過使用相同的結果。
細載控制檯日誌:
[Fine Uploader 5.5.1] Sending simple upload request for 0 fine-uploader.js:251
[Fine Uploader 5.5.1] xhr - server response received for 0 fine-uploader.js:251
[Fine Uploader 5.5.1] responseText = {"code":"UPLOAD_COMPLETE","response":{"MediaModel":{"id":1103,"publicUri":"http://localhost:8080/media/Archive.zip","fileLocation":"/src/services/api/src/main/webapp/media/Archive.zip","mediaDate":{"year":2016,"month":2,"day":28},"mediaOrder":1,"viewName":"","caption":"","altText":"","isPublic":1,"fileSize":1107080,"created":"2016-02-28T14:58:43Z"},"UserMediaModel":{"id":1,"userId":24,"mediaId":3,"created":"2016-02-17T12:48:18Z"}},"errors":[]} fine-uploader.js:251
[Fine Uploader 5.5.1] Received response status 200 with body: {"code":"UPLOAD_COMPLETE","response":{"MediaModel":{"id":1103,"publicUri":"http://localhost:8080/media/Archive.zip","fileLocation":"/src/services/api/src/main/webapp/media/Archive.zip","mediaDate":{"year":2016,"month":2,"day":28},"mediaOrder":1,"viewName":"","caption":"","altText":"","isPublic":1,"fileSize":1107080,"created":"2016-02-28T14:58:43Z"},"UserMediaModel":{"id":1,"userId":24,"mediaId":3,"created":"2016-02-17T12:48:18Z"}},"errors":[]} fine-uploader.js:251
[Fine Uploader 5.5.1] Simple upload request failed for 0
服務器用200%的API響應日誌和我可以看到在Chrome開發工具響應選項卡的準確響應對象。
我添加了一個自定義錯誤處理程序,但沒有更多的詳細信息被提供,只是錯誤是文本輸出
Error on file number 0 - Archive.zip. Reason: {"code":"UPLOAD_COMPLETE",....same as above
最後,所有行屬性格式插入到數據庫中,你從ID來看看上面創建。所有的日誌都指向同樣成功的行動。
感謝您的指點。我也把這個輸出放在http://jsonlint.com/,它解析得很好。
謝謝! (對不起,缺乏JSON格式的,我可以改變它,但是這似乎夠長的話)
編輯 看來,我已經滿足了其他問題與"success":true
和Content-Type=text/plain
規定的要求。以下每個請求是JSON輸出和標頭
Headers:
Key: Access-Control-Allow-Origin Value: http://localhost:9000
Key: Date Value: Mon, 29 Feb 2016 00:55:19 GMT
Key: Access-Control-Allow-Credentials Value: true
Key: Content-Type Value: text/plain; charset=UTF-8
{
"code": "UPLOAD_COMPLETE",
"response": {
"MediaModel": {
"id": 1169,
"publicUri": "http://localhost:8080/media/Archive.zip",
"fileLocation": "/src/services/api/src/main/webapp/media/Archive.zip",
"mediaDate": {
"year": 2016,
"month": 2,
"day": 28
},
"mediaOrder": 1,
"viewName": "",
"caption": "",
"altText": "",
"isPublic": 1,
"fileSize": 1107080,
"created": "2016-02-29T00:55:19Z"
},
"UserMediaModel": {
"id": 1,
"userId": 24,
"mediaId": 3,
"created": "2016-02-17T12:48:18Z"
}
},
"errors": [],
"success": true
}
我確信這最終會變成愚蠢的東西,所以我很欣賞輸入。
可能的複製[我的文件被上傳與我fineuploader設置,但尚未就說明上傳失敗。 ,這是什麼原因呢?(http://stackoverflow.com/questions/34990081/my-file-gets-uploaded-with-my-fineuploader-setup-but-yet-it-shows-upload-failed) –
謝謝@RayNicholus - 我注意到在之後的文檔中嘗試過,但沒有成功。我再次嘗試用/不用chunking。並確保'Content-Type =「text/plain」'爲了保持簡短,一個新的結果粘貼。 http://pastebin.com/knh4VMG4 – ekydfejj
請在問題中粘貼服務器的確切響應。 –