2010-01-10 86 views
0

嘿,我在做這個項目,我們都應該在服務器A上一個JavaScript客戶端應用程序/網頁與服務器B.從服務器端python腳本獲取輸出

我一個Python服務器端腳本連接需要從python腳本獲取輸出並將其存儲到一個變量中,但遇到了一些問題。我試圖爲此使用XMLHttpRequest,儘管我設法建立了連接,但腳本的返回值總是「」,一個空字符串,它不應該是。

有誰知道這個問題可能在這裏以及如何解決它?

P.S.我暗示過它可能與跨服務器腳本安全或類似的事情有關,我不確定這是否有幫助。

謝謝

編輯:我已經更改爲jQuery,這似乎更簡單。顯然這個問題真的是跨服務器(我已經設法獲得數據,如果腳本在同一個服務器中)安全或在網絡瀏覽器(Firefox)中的權限..任何人都知道解決這個問題的方法?

編輯2:我們設法使用JSON解決它......謝謝你的回覆!

+0

您可能想要嘗試的是將您提供給XMLHttpRequest的任何URL取出並在您的Web瀏覽器中訪問該URL。你的瀏覽器應該讓你看到腳本的輸出。也許你的腳本並沒有真正返回任何東西。 – 2010-01-10 18:51:24

+0

我試過了,它正在返回輸出結果。我們嘗試使用text/html,text/xml,並通過將URL放在瀏覽器中顯示。當我們嘗試製作一個文件時它不起作用從JavaScript調用。請求成功(readyState = 4),但responseText爲「」..顯然它不應該是.. 任何其他的方式也可以幫助你。 – Zepee 2010-01-10 19:07:54

+0

Python腳本運行在不同的域上使用JavaScript的頁面?您可能會遇到以下問題:http://en.wikipedia.org/wiki/Same_origin_policy – 2010-01-10 19:18:55

回答

4

聽起來像你的XMLHttpRequest失敗,因爲你正在嘗試做一個跨域請求。您可以使用像JSONP這樣的跨域解決方案。

通常,像Firebug net panel這樣的工具對調試這些類型的問題非常有用 - 您可以使用它們來判斷客戶端是否正確發送請求,以及服務器是否正確響應。