我正在開發我的第一個AIR應用程序(從PHP/Javascript移動過來),並且處於我想從應用程序發送一些數據返回到我的服務器上的PHP腳本的階段。我有以下幾點:AS3 AIR URLLoader POST
var url:String = "PHP URL HERE";
var request:URLRequest = new URLRequest(url);
var requestVars:URLVariables = new URLVariables();
requestVars.test = "1234";
request.data = requestVars;
request.method = URLRequestMethod.POST;
request.contentType = "application/xml;charset=utf-8";
var urlLoader:URLLoader = new URLLoader();
urlLoader.dataFormat = URLLoaderDataFormat.TEXT;
urlLoader.addEventListener(Event.COMPLETE, processSERPS, false, 0, true);
urlLoader.load(request);
我確實有在原來的服務器端的PHP腳本別的東西,但對於調試我只是改變了它轉儲請求陣列。
有了上面的代碼就會簡單地返回任何結果:
Array
(
)
但是,如果我改變請求方法獲取:
request.method = URLRequestMethod.GET;
我收到:
Array
(
[test] => 1234
)
告訴我的代碼是正確的,它只是不發送郵件參數出於某種原因。
我只是改變代碼來使用GET變量,但不幸的是我需要發送的數據太大,因此需要POST。
任何幫助表示讚賞!
是不是PHP代碼不同取決於是否提取POST或GET數據?所以我認爲你的PHP代碼只適用於GET – 2013-02-21 21:52:13
不幸的是,PHP的這一部分是我自信的唯一部分。我在PHP中使用REQUEST,它應該顯示GET或POST。即使我專門將其設置爲回顯POST變量,它也不會顯示任何內容。 – KyleC 2013-02-21 22:16:52
如果使用'request.contentType =「application/xml; charset = utf-8」;'刪除該行,會發生什麼情況?這看起來像POST數據給我的錯誤內容類型。 – nwellnhof 2013-02-21 23:13:18