java 如何转发请求

java后台转发请求的时候,参数请求方式都不变,只是重新请求到另外一台机器。
比如:请求 a.com/aaa 参数:

<xml>
<appid><![CDATA[xxxx]]></appid>
<bank_type><![CDATA[CFT]]></bank_type>
<cash_fee><![CDATA[1]]></cash_fee>
<fee_type><![CDATA[CNY]]></fee_type>
<is_subscribe><![CDATA[Y]]></is_subscribe>
<mch_id><![CDATA[xxx]]></mch_id>
<nonce_str><![CDATA[bc3a47b170514854a2a6d642595ce4de]]></nonce_str>
<openid><![CDATA[xxxx]]></openid>
<out_trade_no><![CDATA[17020966007858130276]]></out_trade_no>
<result_code><![CDATA[SUCCESS]]></result_code>
<return_code><![CDATA[SUCCESS]]></return_code>
<sign><![CDATA[EF6B58421C186F33AD07091EF286A5EC]]></sign>
<time_end><![CDATA[20170209084040]]></time_end>
<total_fee>1</total_fee>
<trade_type><![CDATA[NATIVE]]></trade_type>
<transaction_id><![CDATA[4009972001201702099258001947]]></transaction_id>
</xml>

变成请求b.com/aaa 参数一模一样 并且把请求b.com/aaa的结果返回,但是前端不知道这个结果是从b.com/aaa拿到的

阅读 6.3k
2 个回答

请求另一台机器???转发不可以吧!
转发的话,只是一次请求,显示的地址栏不会变的,前端应该是没法拿到b.com/aaa
用重定向应该可以拿到,不过request里面的东西应该没了。

假设当前服务器为A,另服务器为B,直接让B做个对外的接口给A使用,A再将B处理结果返回给前端,
或者是前端直接请求B。
你这是发起微信支付的时候要由B发起预付单请求给A再给前端?
如果是这样,可以直接前端直接请求B,微信不会检测发起预付单的服务器,只会检测发起页面的URL是否是微信支付授权目录

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题