微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

360浏览器请求json弹框

最近在使用360浏览器时,遇到了一个问题:请求json时会弹出一个窗口,提示是否要打开文件。表现如下:


360浏览器请求json弹框

这个弹窗十分麻烦,而且难以关闭。原因是:360浏览器认情况下会将请求的json文件当做下载文件处理,而非直接展示。

不过,解决这个问题也很简单。我们只需要在http请求头中设置Content-Type字段为application/json即可。

header('Content-Type:application/json; charset=utf-8');

通过设置这个Content-Type字段,我们告知浏览器,请求的资源是一个json文件,需要直接展示,而非下载。

另外,如果我们一次请求多个json文件,可使用以下的示例代码

header('Content-Type: multipart/x-mixed-replace; boundary=1b2cd3e4f5g6h7i8j9k10'); 

// 输出一个json
echo '{"name": "Tom","age": 18}'."\n--1b2cd3e4f5g6h7i8j9k10\n"; 

// 输出第二个json
echo '{"title": "Hello World","content": "This is a demo!"}'."\n--1b2cd3e4f5g6h7i8j9k10\n"; 

// 结束标志
echo "--1b2cd3e4f5g6h7i8j9k10--";

这里,我们在Content-Type中设置了multipart/x-mixed-replace类型,告知浏览器会连续输出多个资源,并使用boundary字段来标识资源的分隔符。

经过以上的操作,我们就可以顺利地在360浏览器中请求json数据了,既无需弹出窗口,又能得到我们需要的数据。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐