1. 程式人生 > >讓JSON跨域解決方案

讓JSON跨域解決方案

第一種

在進行JSON跨域訪問的時候,chrome,火狐瀏覽器在json進行跨域訪問的時候,只需要設定2個響應頭為

response.addHeader("Access-Control-Allow-Origin", "*"); // open your api to any client 
response.addHeader("Access-Control-Allow-Methods", "POST"); // a allow post


即可實現簡單的跨域訪問。
而ie6~9瀏覽器下不執行JSON跨域請求的。
如果簡單的做get 的跨域請求可以使用jsonp的方式 ,這種方式ie,chrome和火狐瀏覽器都是支援的, 
如果做post的請求
1.jsonp是不支援post請求的
2.ie8,9 如果過要使用post的跨域,可以引入 jquery.iecors 這個東西來解決。 ie6,7 目前是不行的
其中json的跨域還有另一個別名叫:cors,也叫jsonp

第二種

 
也可以使用iframe的方式來提交,iframe的方式相容所有的瀏覽器但是post以後回撥難以獲取, 也不怎麼好。

第三種


 當然,你也可以使用代理中轉一下,比如 
A伺服器上  a.html--->post到  A伺服器上的a.php檔案
然後a.php檔案傳送http請求到 B伺服器的b.php檔案獲取返回內容給A伺服器的a.php
A伺服器上的a.php---->響應給a.html檔案

相關推薦

JSON解決方案

第一種 在進行JSON跨域訪問的時候,chrome,火狐瀏覽器在json進行跨域訪問的時候,只需要設定2個響應頭為 response.addHeader("Access-Control-Allo

JSON解決方案收集

get ogl obb 本地 allow con mesa 跨域請求 loader 最近面試問的挺多的一個問題,就是JavaScript的跨域問題。在這裏,對跨域的一些方法做個總結。由於瀏覽器的同源策略,不同域名、不同端口、不同協議都會構成跨域;但在實際的業務中,很多

前端如何去做解決方案

時也 for 前後端 define 影響 list nts 告訴 iframe 前言 那些你,你常用的跨域解決方案除了jsonp 之外,還有其他的嗎?今日早讀文章可以告訴你,本文由 金蝶 @scq000授權分享。 正文從這開始~ 瀏覽器在請求不同域的資源時,會因為同源策略的

前端常見解決方案(全)

-type crm api war str bsp 斷開 jquery 數據塊 什麽是跨域? 跨域是指一個域下的文檔或腳本試圖去請求另一個域下的資源,這裏跨域是廣義的。 廣義的跨域: 1.) 資源跳轉: A鏈接、重定向、表單提交 2.) 資源嵌入: <link

前端常見解決方案

自定義 兩個 ech cors onload 消息 strong put 普通 什麽是跨域? 跨域是指一個域下的文檔或腳本試圖去請求另一個域下的資源,這裏跨域是廣義的。 廣義的跨域: 1.) 資源跳轉: A鏈接、重定向、表單提交 2.) 資源嵌入:<lin

spring mvc的解決方案

增加 是否 strac inf oss ref nds sso option 什麽是跨域 一句話:同一個ip、同一個網絡協議、同一個端口,三者都滿足就是同一個域,否則就是跨域。 為什麽非得跨域 基於兩個方面: a. web應用本身是部署在不同的服務器上 b.基於開發的角度

前端常見的解決方案

params 分離 true local img 原生 AI spa 共享 什麽是跨域: 一個域名下的文檔或者腳本試圖請求另外一個域名的下的資源 廣義的跨域: 資源跳轉:a鏈接、重定向、表單提交 資源嵌入:<link> <script> &

同源策略、解決方案

color 動態 一個 cati req 回調函數 IV 解決方案 參數傳遞 一、定義 1、什麽是源? 源(origin)就是協議、域名和端口號。以上url中的源就是:http://www.company.com:80若地址裏面的協議、域名和端口號均相同則屬於同源。以下是相

【PHP】Ajax解決方案 、jsonp、cors

code col 服務器 實現 官方 跨域傳輸 ref 響應 非官方 參考文章: 1、https://blog.csdn.net/u014727260/article/details/72793459 (後臺java,實際上差不多) 2、 如何解決ajax跨域傳輸 數據的問

ajax 解決方案

AC head -a PE web cto options 方案 col 第一步:配置Php 後臺允許跨域 <?php header(‘Access-Control-Allow-Origin: *‘); header(‘Access-Control-Allow-He

瀏覽器同源策略,及解決方案

ebo 同名 () hash 站點 題解 先來 說了 是否 一、Origin(源) 源由下面三個部分組成: 域名 端口 協議 兩個 URL ,只有這三個都相同的情況下,才可以稱為同源。 下來就以 "http://www.example.com/page.html" 這個

Mac上Chrome瀏覽器解決方案

一個 移除 跨域問題 data google 導致 b- 更改 leo 現在比較新的瀏覽器在本地調試時AJAX請求,基本都會有跨域問題。相應的解決方案也挺多的,工具也不少。像charles等抓包工具等。不過最簡單的就是移除瀏覽器的同源限制。 我們要做的第一步,就是創建一個文

同源策略防解決方案

限制 out ole cors cti type com baidu pip 跨域 由於同源策略導致的不同源網站間頁面腳本無法互相訪問。 同源策略 出於安全性考慮,一個網站的腳本不能訪問另一個網站的請求。除非它們的協議號,域名,端口號相同。 防跨域 同源策略條件過於嚴苛,很

常見的解決方案以及原理

一、JSONP(適用於單項跨域請求) 原理:因為瀏覽器對script不存在同源策略,所以script可以跨域請求外部資源,返回的資料是json格式。 缺點:1、只能傳送get請求,無法傳送post請求  2、無法判斷請求成功還是失敗   二、porxy代理

網頁中的請求 同源策略、解決方案

  品習知識點 簡單表述幾個概念,詳解@度娘。 1、同源策略,瀏覽器最核心的安全功能,在無授權情況下,只允許讀寫相同源的資源。其中源(Origin)指的是協議、域名、介面,同源即三者相同。 2、預檢請求,瀏覽器出於安全策略,在跨域請求資料時候預先發起請求,以知是否可跨域請求資料的請求。 關

SignalR 解決方案全面

原文: SignalR 跨域解決方案全面 SignalR 分:PersistentConnection和Hub 2種模式。 跨域又分:UseCors和JsonP  2種方法 所以例子寫了4種。 核心程式碼: UseCors //PersistentConnection Mode

前端JS解決方案

JS跨域請求 這裡說的js跨域是指通過js在不同的域之間進行資料傳輸或通訊,比如用ajax向一個不同的域請求資料,或者通過js獲取頁面中不同域的框架中(iframe)的資料。只要協議、域名、埠有任何一個不同,都被當作是不同的域 跨域解決方案 CORS方案 COR

Django - - 同源策略和解決方案

url link 交互 功能 出了 tex 鏈接 不能 header 目錄 同源策略 一個源的定義 同源策略是什麽 舉個例子 jQuery中getJSON方法 JSONP應用 1, 同源策略 1.1 一個源的定義 如果兩個頁面的協議,端口(如果有指定)和域名都

No 'Access-Control-Allow-Origin'解決方案

No 'Access-Control-Allow-Origin' header is present on the requested resource.當使用ajax訪問遠端伺服器時,請求失敗,瀏覽器報如上錯誤。這是出於安全的考慮,預設禁止跨域訪問導致的。 一、什麼是跨域訪問

網站解決方案

什麼是跨域問題 是兩個專案之間使用ajax(前端類似與後端技術httpclient)實現通訊,如果瀏覽器訪問的域名地址與ajax訪問的地址不一致的情況下,預設情況下瀏覽器會有安全機制,這個機制跨域問題,會無法獲取到返回結果 瀏覽器跨域問題產生的原因 使用ajax請求呼叫第三方介面,如