2012-06-19 87 views
0

在用jsp web工程,我已經下面要求過程跨域XML

上傳文件(比方說的圖像)到不同的域,它返回其包括上傳文件的細節(例如一個xml:路徑的上傳的圖片等)。

如何捕獲此xml以保存db中的細節?

我不能做一個正常的HTML表單提交,因爲我失去控制之後。所以我試圖通過設置窗體目標到一個iframe來實現這一點。但我無法處理iframe的內容?

任何建議我可以做到這一點?

我可以使用yql來處理嗎?

回答

0

假設您提交文件的服務器不受您的控制(因此您無法使用CORS),您可以通過您自己的服務器代理請求。

您無法使用YQL,因爲您無法使用YQL進行發佈請求。

+0

謝謝你的回覆。我得到的響應xml作爲iframe內容。我可以使用yql來處理這個xml對象嗎? – Sree

+0

不,這就是爲什麼我說「你不能使用YQL」。 YQL通過使HTTP請求不違反同源策略來獲取數據。 – Quentin

+0

好的。你能告訴我如何使用代理?你有什麼樣的例子嗎? – Sree

1

是的,你可以使用YQL來做到這一點。雖然不容易,但您需要設置您自己的YQL表。

每個YQL表是描述如何操作數據的XML文件。 YQL XML規範允許您定義可用於write JavaScript code that does almost anything<execute>元素。

在此<execute>塊內,可以使用y.rest對象將POST數據發送到其他位置。

您可能必須使用base64編碼文件才能使用YQL語法實際發佈數據,如INSERT INTO mywebsite.files (name, data) VALUES ('foo.png', 'KBB987987JJBHBGV==')(第二個參數是說明性的base64編碼文件)。