用于检查内容类型application / json等的正则表达式

时间:2016-06-25 22:52:00

标签: javascript regex

此特定应用程序以[{1}}

格式返回content-type标头

我不确定这是否会改变并缩减为“应用程序/ json”#39;只有或者可能是我在其他地方重用此代码?

我的代码是

application/json;charset=UTF-8

如何最好地检查内容类型application / json ???

3 个答案:

答案 0 :(得分:2)

您可以使用RegExp /application\/json/



var response = {"Content-Type":"application/json;charset=UTF-8"};
console.log(response["Content-Type"].match(/application\/json/)[0]);




答案 1 :(得分:1)

我认为你做得对,你可以使用正则表达式进行检查。如果它返回null则表示它不是json。

if (response.headers['Content-Type'].match(/application\/json/i)){

   // do your stuff here
}

其他方法是在标题字符串

中查找application/json字符串
if (response.headers['Content-Type'].contains('application/json')){

   // do your stuff here
}

答案 2 :(得分:0)

There are multiple JSON content-types.并非所有人都是"官方",但如果您要尝试将它们全部匹配,请尝试this regex

^((application\/json)|(application\/x-javascript)|(text\/javascript)|(text\/x-javascript)|(text\/x-json))(;+.*)*$

您可以在正则表达式中添加/删除内容类型,只需记住在它们周围加上正确的括号。