javascript - Ajax跨域请求和表单提交事件
假设现在有两家网站,A和B,他们面向同一用户(C)提供服务。
现在,C登录A公司提供的网页,在登录表单中输入用户名和密码。
在输入用户名的时候,浏览器异步请求数据,表单下方实时显示可用用户名,该数据是B网站服务器返回的(A并没有B网站服务器的控制权)。
然后输入完成以后,按回车,触发表单提交事件。提交的时候,用户名发送到A网站,密码本地哈希后发送到B网站。
以上怎么实现,不需要讲的太具体。
回复内容:
假设现在有两家网站,A和B,他们面向同一用户(C)提供服务。
现在,C登录A公司提供的网页,在登录表单中输入用户名和密码。
在输入用户名的时候,浏览器异步请求数据,表单下方实时显示可用用户名,该数据是B网站服务器返回的(A并没有B网站服务器的控制权)。
然后输入完成以后,按回车,触发表单提交事件。提交的时候,用户名发送到A网站,密码本地哈希后发送到B网站。
以上怎么实现,不需要讲的太具体。
可以使用如下两种做法:
使用CORS (Cross-origin resource sharing)
需要B网站请求返回的头部添加CORS相关Header,其中Access-Control-Allow-Origin中添加A网站的域。具体跨域信息参考:http://blog.csdn.net/qgw_2000/article/details/8882051通过A网站代理发送请求到B网站
请求都发给A网站,针对需要请求B网站的请求进行转发,在nginx中,简单通过proxy_pass就可以做到。
这不就是xss
嘛,B服务器设定一下,接受来自A域名的跨域请求就可以了。
如果懂服务器配置建议采用二楼的第二种方法,如果不懂,用php的curl同样可以实现,前端表单异步提交都给A站,A站通过curl访问B站的接口(或者说模拟提交表单)来获取你想要的数据

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

PHP仍然流行的原因是其易用性、靈活性和強大的生態系統。 1)易用性和簡單語法使其成為初學者的首選。 2)與web開發緊密結合,處理HTTP請求和數據庫交互出色。 3)龐大的生態系統提供了豐富的工具和庫。 4)活躍的社區和開源性質使其適應新需求和技術趨勢。

Golang在性能和可擴展性方面優於Python。 1)Golang的編譯型特性和高效並發模型使其在高並發場景下表現出色。 2)Python作為解釋型語言,執行速度較慢,但通過工具如Cython可優化性能。

Python更易學且易用,C 則更強大但複雜。 1.Python語法簡潔,適合初學者,動態類型和自動內存管理使其易用,但可能導致運行時錯誤。 2.C 提供低級控制和高級特性,適合高性能應用,但學習門檻高,需手動管理內存和類型安全。

HTML、CSS和JavaScript是構建現代網頁的核心技術:1.HTML定義網頁結構,2.CSS負責網頁外觀,3.JavaScript提供網頁動態和交互性,它們共同作用,打造出用戶體驗良好的網站。

在React中使用HTML渲染組件和數據可以通過以下步驟實現:使用JSX語法:React使用JSX語法將HTML結構嵌入JavaScript代碼中,編譯後操作DOM。組件與HTML結合:React組件通過props傳遞數據,動態生成HTML內容,如。數據流管理:React的數據流是單向的,從父組件傳遞到子組件,確保數據流動可控,如App組件傳遞name到Greeting。基本用法示例:使用map函數渲染列表,需添加key屬性,如渲染水果列表。高級用法示例:使用useState鉤子管理狀態,實現動

IIS和PHP可以兼容,通過FastCGI實現。 1.IIS通過配置文件將.php文件請求轉發給FastCGI模塊。 2.FastCGI模塊啟動PHP進程處理請求,提高性能和穩定性。 3.實際應用中需注意配置細節、錯誤調試和性能優化。

HTML5和H5沒有區別,H5是HTML5的簡稱。 1.HTML5是HTML的第五個版本,增強了網頁的多媒體和交互功能。 2.H5常用於指代基於HTML5的移動網頁或應用,適用於各種移動設備。

Python和C 各有優勢,選擇應基於項目需求。 1)Python適合快速開發和數據處理,因其簡潔語法和動態類型。 2)C 適用於高性能和系統編程,因其靜態類型和手動內存管理。
