我在Flex中創建了一個組件,當用戶輸入條目時,它會自動完成一些文本輸入。從Flex運行應用程序時,一切正常。但是,編譯應用程序並加載後,自動完成不起作用。這裏是一些背景信息。Flex Web應用程序在編譯前工作正常
- 在創建的Adobe Flash Builder 4.5中。
- Web應用程序正在內部網絡上運行。
- 自動完成使用的服務是外部服務。
- 承載Web應用程序的內部服務器可以很好地加載外部服務的URL。
我不知道這是否這是一個權限問題還是什麼。任何洞察力將不勝感激。
我在Flex中創建了一個組件,當用戶輸入條目時,它會自動完成一些文本輸入。從Flex運行應用程序時,一切正常。但是,編譯應用程序並加載後,自動完成不起作用。這裏是一些背景信息。Flex Web應用程序在編譯前工作正常
我不知道這是否這是一個權限問題還是什麼。任何洞察力將不勝感激。
我從Web服務接收數據時遇到了類似的問題。如果crossdomain文件不在其應有的位置(webservice.domain.com/crossdomain.xml),您將收到404錯誤。所以這聽起來不像是你的問題。但是,如果您的crossdomain文件不包含正確的標記,它不會拋出HTTP錯誤,但它仍然不起作用。
如果您從HTTP服務器(您的應用程序駐留的地方)到HTTPS服務器(您的服務所在的地方),它將默認無法正常工作。這通常是不好的安全措施,但是如果您確定它沒有問題,則可以使用secure =「false」作爲allow-access-from標記。
此外,您可能需要既包括允許存取從標籤和允許-HTTP請求報頭,從標籤得到你正在尋找的數據。
這裏是由Adobe跨域策略文件規範,它是在搞清楚需要什麼屬性爲每個標籤的好資源:http://www.adobe.com/devnet/articles/crossdomain_policy_file_spec.html。
祝你好運!
「從Flex運行應用程序時」我不確定這是什麼意思。沒有編譯它就不可能測試一個應用程序。你的意思是你在從Flash Builder啓動應用程序時工作正常;但是當你把它放在網絡服務器上時不行?或者你的意思是別的嗎?如果您爲自動完成數據使用外部服務,你是否有一個跨域文件,允許Flex在服務於不同的Web服務器時調用遠程服務?使用「硬盤驅動器URL」在瀏覽器中加載已編譯的SWF將繞過跨域安全限制。 – JeffryHouser
對不起,我不清楚。是的,我應該說從Flex啓動Web應用程序時一切正常。我確實有一個跨域文件,它設置爲允許從任何請求頭和任何域進行訪問。 – Chris
你有沒有收到任何錯誤信息或什麼都沒有?什麼是服務器的響應?也許你可以使用像[Charles](http://www.charlesproxy.com/)這樣的代理來查看響應是什麼(或者FireBug的'net'面板已經可以做到這一點)。 – RIAstar