[請益] PHP的Curl可以繞過CORS嗎?

看板PHP作者 (Litfal)時間10年前 (2014/06/17 13:01), 10年前編輯推噓1(1013)
留言14則, 5人參與, 最新討論串1/1
我對PHP算一竅不通,只有google + 爬文而已。 狀況是這樣的: 我們幫客戶用IIS架.net的WebService, 寫.net code/用網頁的Server端/用Fiddler直接POST都不會有問題。 但客戶另一個用PHP的廠商就抱怨,他POST會遇到CORS的問題。 我知道使用瀏覽器,做client端的cross-domain訪問會遇到這個問題, 例如用javascript做post。 但我不清楚PHP有沒有方法避開,例如從Server端Relay。 PS: 技術上來說,可以調整WebService,使其支援CORS。 但客戶的環境很奇怪...他們把多個WebServier放在同一個虛擬網站上。 我做全域設定的話,會一併影響WebService上的其他服務,有點危險。 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 220.135.179.10 ※ 文章網址: http://www.ptt.cc/bbs/PHP/M.1402981275.A.C79.html

06/17 13:50, , 1F
你可以看對面過來的Referer決定回怎樣的CORS
06/17 13:50, 1F
因為客戶的WebService很奇葩,多個服務放在同一個虛擬網站上。 所以無論是要調整web.config還是Global.asax,客戶都頗抗拒的。 客戶也怕為了我們的服務,弄壞其他東西。 不過這偏向.net webservice端的東西。 在這邊我比較想問的是,PHP有辦法從Server端做POST, 繞過瀏覽器的CORS規範嗎? ※ 編輯: Litfal (1.171.173.57), 06/17/2014 15:51:30

06/17 16:42, , 2F
php的CURL一定是從server上發出來的阿
06/17 16:42, 2F

06/17 19:11, , 3F
server端哪來的瀏覽器規範,當然不管那個的阿
06/17 19:11, 3F
讚!那就是對方工程師的能力問題了 XDDD ※ 編輯: Litfal (1.171.173.57), 06/17/2014 21:14:52

06/18 01:13, , 4F
這種事情,我都會要求對方提供相關資訊讓我debug
06/18 01:13, 4F

06/18 01:14, , 5F
如果沒有,像我自己都會整對方ㄎㄎ.. 而且都站得住腳
06/18 01:14, 5F

06/18 01:14, , 6F
有時候面對這種情況,第一時間得知的問題其實根本不是核心問
06/18 01:14, 6F

06/18 01:15, , 7F
題.
06/18 01:15, 7F

06/18 01:15, , 8F
就如同樓主最後猜的,可能是工程師的問題 or 跟你們銜接
06/18 01:15, 8F

06/18 01:15, , 9F
過程有文件不足或溝通不足的情況,才衍生出一個這麼奇妙的問
06/18 01:15, 9F

06/18 01:15, , 10F
題出來
06/18 01:15, 10F
因為對口不是我,加上我PHP一竅不通,由我質疑對方好像不太恰當。 但我花了很多時間debug和交叉測試,只差沒把PHP架起來, 加上對方一直做一些[無效的]要求... 所以才來這邊問,說不定PHP根本可以很簡單繞過這個問題。

06/18 10:29, , 11F
他不會繞了個彎從javascript收發吧
06/18 10:29, 11F
我猜很有可能是... ※ 編輯: Litfal (220.135.179.10), 06/18/2014 11:36:13

06/18 13:04, , 12F
跨網域js cors就請對方加header,不然就自己作curl~
06/18 13:04, 12F
再爬了一下文,原來PHP也有SoapClient可用...連自己串curl都省了。 ※ 編輯: Litfal (220.135.179.10), 06/18/2014 14:50:38

06/18 23:42, , 13F
對阿,PEAR有套件
06/18 23:42, 13F

06/19 02:59, , 14F
guzzle也不錯用
06/19 02:59, 14F
文章代碼(AID): #1JdykRnv (PHP)