nginx是否可以拦截程序请求第三方api 并且返回json

nginx是否可以拦截程序请求第三方api 并且返回json

nginx是否可以拦截程序请求第三方api 并且返回json

比如
php curl 请求一个第三方接口,不通过程序代码去拦截,想通过nginx或php-fpm或别的拦截这个域名请求并且返回json


回答:

以api xx.xxx.com/xxx/aaa/api 为例:

hosts将域名指向本地
127.0.0.1 xx.xxx.com

nginx构造下路径

location ~ ^/xxx/aaa/api {

default_type application/json;

return 200 '{"status":"success","result":"nginx json"}';

}

这种方法如楼上所说,叫中间人攻击(在真实场景中更复杂,需要用到伪基站)。

很多软件的破解方法也都是用这种方式。


回答:

不改代码,拦截请求,你要的是中间人。

mitmproxy 或者 charles 都行吧。


回答:

那你必须是让访问第三方api接口的请求通过nginx,比如你的访问第三方的接口是https://site.com/redirect?url...,url后面是跟着你的访问第三方的接口,由后端接受,统一转发,如果你的程序是这样设计的就没问题,这样就没问题,但是如果不是通过nginx,而是直接由客户端发送,那就不行了,而且一般不会把这块逻辑放在nginx上,一般是放在程序上,更新迁移都比较好管理.

以上是 nginx是否可以拦截程序请求第三方api 并且返回json 的全部内容, 来源链接: utcz.com/p/938110.html

回到顶部