什么是正確的JSON內容類型?我一直在忙著JSON一段時間,只是把它作為文本推出它并沒有傷害任何人(我知道),但我想開始正確地做事。我見過這樣的JSON內容類型很多所謂的“標準”:application/json
application/x-javascript
text/javascript
text/x-javascript
text/x-json但哪一個是正確的,還是最好的?我認為它們之間存在安全性和瀏覽器支持問題。我知道有一個類似的問題,如果REST API返回JSON,那么MIME類型是什么?,但我想要一個稍微有針對性的答案。
4 回答

陪伴而非守候
TA貢獻1757條經驗 獲得超8個贊
對于JSON文本:
application/json
JSON文本的MIME媒體類型是
application/json
。默認編碼為UTF-8。(來源:RFC 4627)。
對于帶回調的JSONP(可運行的javascript):
application/javascript
以下是相關評論中提到的一些博客文章。
IANA的官方mime類型列表來自@ gnrfan的答案如下


絕地無雙
TA貢獻1946條經驗 獲得超4個贊
當然,JSON的正確MIME媒體類型是application/json
,但有必要實現應用程序中預期的數據類型。
例如,我使用Ext GWT,服務器響應必須為text / html,但包含JSON數據。
客戶端,Ext GWT表單監聽器
uploadForm.getForm().addListener(new FormListenerAdapter(){ @Override public void onActionFailed(Form form, int httpStatus, String responseText) { MessageBox.alert("Error"); } @Override public void onActionComplete(Form form, int httpStatus, String responseText) { MessageBox.alert("Success"); }});
如果使用application / json響應類型,瀏覽器建議我保存文件。
使用Spring MVC的服務器端源代碼片段
return new AbstractUrlBasedView() { @SuppressWarnings("unchecked") @Override protected void renderMergedOutputModel(Map model, HttpServletRequest request, HttpServletResponse response) throws Exception { response.setContentType("text/html"); response.getWriter().write(json); }};
- 4 回答
- 0 關注
- 1142 瀏覽
添加回答
舉報
0/150
提交
取消