一个第三方网站的接口,比如:https://core-api.prod.blur.io/v1/prices, 直接在浏览器打开,接口可以返回正常结果(隐私模式,不戴任何cookie),但是在node环境下我去调这个接口就返回403
怎么回事,如何解决
这个问题可能是因为该第三方网站的接口在请求时对于浏览器发送的请求进行了限制,只允许浏览器请求,而禁止其他非浏览器的请求。这种情况下,如果在Node环境下直接使用模块请求该接口,很有可能会因为请求头不符合要求而被该网站拒绝。
解决这个问题可以尝试在Node环境下使用一些第三方库来模拟浏览器发送请求,例如Puppeteer、Headless Chrome等。这些库可以模拟浏览器的行为,包括发送请求时携带一些特定的请求头,从而绕过该接口对于非浏览器请求的限制。
访问的时候header加上User-Agent试试,一般这种是header参数漏了导致无权访问,你可以看下正常访问的时候对应的header是什么,然后在node中请求的时候加上