av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術文章
文章詳情頁

java - 如何解決跨域重定向攜帶參數的問題?不使用將參數拼接在重定向url末尾的方式

瀏覽:136日期:2023-11-15 10:24:39

問題描述

如何解決跨域重定向攜帶參數的問題?不使用將參數拼接在重定向url末尾的方式

需求,項目A在服務器A上,需要重定向到服務器B上項目B,并且需要攜帶參數,參數對用戶不可見,所以不可以將參數拼接在重定向url后面,各位 還有其他方案嗎?

項目使用 spring

RedirectAttributes.addFlashAttribute 是不可以的,他只能夠在同一個項目之內的controll之間重定向。

這個問題沒有解決,各位給個回復頂起啊。

java - 如何解決跨域重定向攜帶參數的問題?不使用將參數拼接在重定向url末尾的方式

補充問題:(1)樓下回答可以把數據放在請求的header里 不過需要對方服務器需要設置允許請求頭自定義字段

這個該如何理解?如何實現?

瀏覽器請求服務器A(不是ajax請求),服務器A 返回302響應以及重定向url 對客戶端進行重定向,此時服務器A可以將需要傳遞的參數放置到響應頭中,然后瀏覽器對目標url進行重定向,但是此時不會攜帶之前重定向響應頭信息啊

如何才能夠讓他攜帶過去呢?

(2)問題二, 服務器返回302重定向響應,這個響應中能夠包含響應體報文嗎???

因為我測試的是使用response寫入數據,但是瀏覽器端看不到重定向響應數據,這一點在實現上是如何控制的?是不是所有的重定向響應都不包含響應體?

問題解答

回答1:

可以把數據放在請求的header里 不過需要對方服務器需要設置允許請求頭自定義字段

回答2:

服務器端A向B發送參數,等B應答

B得到參數保存起來,給A應答一個token。A攜帶這個token重定向到B

B接收到A的重定向,根據token獲取第1步保存好的參數

回答3:

制造一個<form method='POST'>,把參數填以<input type='hidden' ...>的形式填到<form>里,再用JavaScript觸發submit(),這些參數就在地址欄里不可見地帶到目標站點了。

回答4:

謝謝邀請,如果兩個服務都是你自己控制的,加密參數內容就可以了,可以參考 http session 是如何加密解密的,有相關安全標準的。

回答5:

題主要不試試從前端的角度去解決這個問題?就是通過前端發送一個ajax請求,然后使用jsonp去解決跨域傳參數的問題

回答6:

或者是做一個中間層服務,這樣用戶請求中間層服務是看不到具體的參數,也控制了跨域問題

回答7:

把數據和服務器B的地址寫給瀏覽器的ajax,ajax拿到地址后帶著數據post到B服務器.

回答8:

1.如果這兩個服務器都是你可控的可以通過cookie跨域的方式帶過去,注意只有通過cookie跨域302重定向才能帶著cookie請求頭去訪問B服務器,別的自定義請求頭瀏覽器是不會帶過去的。2.http協議并沒有規定302響應時不能帶響應體,可能是瀏覽器自動忽略了?3.你可以用307來做,這樣你的post請求就會post到新的uri上去。具體看看rfc2616-307

標簽: java
相關文章:
主站蜘蛛池模板: 国产在线色 | 欧美视频在线播放 | av在线播放网址 | 欧美一级免费片 | 国产高清亚洲 | 欧美一区二区三区久久精品视 | 国产视频久久 | 三级黄色大片网站 | 欧美video| 亚洲视频区 | 亚洲成人免费视频 | 在线欧美小视频 | 人妖无码 | 色爱区综合 | 精品人伦一区二区三区蜜桃网站 | 人人干人人干人人干 | 99视频在线免费观看 | 久久成人一区 | 国产欧美日韩视频 | 精品一区二区久久久久久久网精 | 成人午夜高清 | 人人干人人干人人 | 欧美成人免费在线视频 | 成人网av| 国产美女永久免费无遮挡 | 黄a在线播放 | 涩涩视频网站在线观看 | 亚洲精品在线视频 | www.操com| 免费看日韩视频 | 国产激情第一页 | 日本不卡一二三 | 国产探花在线精品一区二区 | 欧美日韩在线免费观看 | 亚洲国产精选 | 亚洲精品一| 国产精品www | 久久久久久99| www.888www看片 | 精品国产一区探花在线观看 | 午夜成人免费视频 |