文章详情页
javascript - 跨域读取网站接口获取数据遭遇堵截
浏览:123日期:2023-06-09 08:26:16
问题描述
今天用webpack的代理模式想要读取某网站的数据接口,来获取在线数据。结果返回200,以为成功了。打开数据一看,code返回500,直接被服务器判定恶意访问了。想请问碰到这种情况,有什么办法可以不被服务器判定为恶意访问而获取到正常数据吗?以下图一为状态码截图,图二为返回的数据。
问题解答
回答1:今天修改了接口后请求成功了,原因每次请求这个接口时,都发发送若干个参数给服务器,其中一个是token参数。我昨天在没有仔细看接口,觉得接口地址太长了,就把除了商铺ID以外的参数都删了,把token参数也删了。于是就出问题了。今天我吧token参数加上,就可以直接获取数据。不过奇怪的是,对方服务器判定token似乎只要有值即可,并不验证值,所以我吧token参数的值,改为任何字符都可以通过。
回答2:首先,data里面的500已经是响应报文数据里面的内容了,这就意味着那个500是人家程序员给你的500,而不是HTTP的状态码。这个500在人家那里意味着‘餐单正在维护。。。。。。’。
如果像你所说的,你被人家判定为恶意访问了,那这个是人家的某种不管是出于跨域请求方面的安全也好还是别的也好的策略,你能怎么办?只能让人家把的ip加到他的白名单里面,这样子成为他信任的访问者,然后给你返回你想要的数据。
回答3:先用正常方式抓包。看看请求中都发了什么信息(host、referer、cookie、ua啥的)。然后你请求的时候也带上同样的内容试试。
标签:
JavaScript
相关文章:
1. java 排序的问题2. 网络传输协议 - 以下三种下载方式有什么不同?如何用python模拟下载器下载?3. 我在centos容器里安装docker,也就是在容器里安装容器,报错了?4. 如何修改phpstudy的phpmyadmin放到其他地方5. angular.js - Angular路由和express路由的组合使用问题6. 我的html页面一提交,网页便显示出了我的php代码,求问是什么原因?7. node.js - gulp文件监听的问题8. 数据库 - 使用读写分离后, MySQL主从复制延迟会导致读不到数据吗?9. php - mysql中,作为主键的字段,用int类型,是不是比用char类型的效率更高?10. tp6表单令牌
排行榜
