1:nginx反向代理(需要两个nginx服务)
在nginx反向代理服务器通过使用proxy_set_header实现。
e. proxy_set_header X-Forwarded-For 127.0.0.1
2:安装模块Passenger
[Passenger用户手册] https://github.com/biti/passenger-doc-zh/wiki/Passenger%E7%94%A8%E6%88%B7%E6%89%8B%E5%86%8Cnginx%E7%89%88
安装完成后使用:
passenger_set_cgi_param HTTP_X_FORWARDED_FOR 127.0.0.1
来增加请求header中的参数
应用场景:
1. 切流,一个线上服务,新增了一个功能,需要公网内部测试,这时候可以根据来源ip &path设置不同的header信息,配合业务逻辑实现内外网流量切分,保证内测功能只有内网可见。
2. 使用非标准标头向上游服务器通知用户的IP地址和其他请求属性
首先,需要先了解这个对象的属性和方法:属性
说明
readyState
表示XMLHttpRequest对象的状态:0:未初始化。对象已创建,未调用open;
1:open方法成功调用,但Sendf方法未调用;
2:send方法已经调用,尚未开始接受数据;
3:正在接受数据。Http响应头信息已经接受,但尚未接收完成;
4:完成,即响应数据接受完成。
Onreadystatechange
请求状态改变的事件触发器(readyState变化时会调用这个属性上注册的javascript函数)。
responseText
服务器响应的文本内容
responseXML
服务器响应的XML内容对应的DOM对象
Status
服务器返回的http状态码。200表示“成功”,404表示“未找到”,500表示“服务器内部错误”等。
statusText
服务器返回状态的文本信息。
有的时候后台需要判断我们是那个设备请求的接口,这个时候我们可以个请求头添加一些参数
AFHTTPSessionManager *manager = [[AFHTTPSessionManager alloc] init]
//向请求头中添加参数
[manager.requestSerializer setValue:@"iOS" forHTTPHeaderField:@"DeviceType"]
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)