簡體   English   中英

Parsing JSON on Firefox vs. Chrome (error: JSON.parse: unexpected end of data at line 1 column 1 of the JSON data)

[英]Parsing JSON on Firefox vs. Chrome (error: JSON.parse: unexpected end of data at line 1 column 1 of the JSON data)

I've built a small application in node.js and javascript using the twitter API that gets a keyword input from the user and then displays some recent tweets with that keyword.

它在所有瀏覽器的 localhost 中都能正常工作。 但是當我部署到 Heroku 時,它只適用於 Chrome。

在 Firefox 中,我收到此錯誤:未捕獲(承諾中)語法錯誤:JSON.parse:Z0ECD11C1D7A287401D148A23BBD7A2 數據的第 1 行第 1 列的數據意外結束

我收到了一組精簡的推文,其中數組中的每個元素都采用類似 {"text": "this is a tweet", "user": "@username", "url": "twitter.com/這條推文”}。 我在 JSON.stringify 上完成的是數組本身。

所以我的問題特別是我可能需要做些什么來解決這個問題,但更一般地說,我很好奇為什么我對 JSON 的解析在 Chrome 上可以正常工作,但在 Firefox 上卻不行。

如果您查看錯誤消息,您會發現它在第一個字符上被捕獲,這意味着輸入到 JSON.parse() 的字符串甚至沒有以有效字符開頭,例如“{”。 嘗試注銷服務器返回給您的內容 - 通過這樣做您可能會很快找到問題。

如果您使用 fetch,一種可能的情況是服務器實際上正在返回一個錯誤(帶有 4xx 或 5xx 狀態代碼的東西)。 fetch() 不會拋出狀態代碼錯誤,只會拋出網絡錯誤,因此如果您沒有正確檢查錯誤代碼,您可能會嘗試將錯誤消息解釋為 JSON 數據。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM