我正在使用AMFPHP將我的數據庫與我的Flex應用程序鏈接成功。不過,我希望能夠測試遠程請求閃光燈之外,由你鍵入的東西:「僞造」(=嘲諷)AMFPHP遠程處理請求
http://localhost/amfphp/gateway.php?[WHAT我放在這裏]
我怎麼了問號後整理有瀏覽器(或C++ http組件)調用amfphp服務,以便http請求不需要從閃存「啓動」。
我正在使用AMFPHP將我的數據庫與我的Flex應用程序鏈接成功。不過,我希望能夠測試遠程請求閃光燈之外,由你鍵入的東西:「僞造」(=嘲諷)AMFPHP遠程處理請求
http://localhost/amfphp/gateway.php?[WHAT我放在這裏]
我怎麼了問號後整理有瀏覽器(或C++ http組件)調用amfphp服務,以便http請求不需要從閃存「啓動」。
AMF being a binary format,事情可能不會是簡單的:你必須瞭解你的數據是如何編碼...
第一步,也許你可以從你gateway.php
腳本,只需將它從閃存組件中調用的所有內容轉儲到文件中?
通過這種方式,您可以看到接收到的數據如何(並且您知道它是在POST中還是在GET中傳遞)。
根據數據的外觀,也許你可以「僞造」一個請求到你的服務器 - 但我認爲它不會像從瀏覽器調用URL那麼簡單。 ..
考慮到AMFPHP網關只是一個機制,可以將(從/到二進制)轉換爲一個具有各種傳入參數的類/方法,並最終返回一個數據 - 你可以直接單元測試該方法,從而跳過整個AMF層?
這聽起來像你想從PHP進行AMF調用。您無法直接從瀏覽器執行此操作。數據將以二進制AMF格式返回,這當然是PHP或瀏覽器無法直接處理的。我甚至不認爲它可以提出請求。
您需要一個AMF客戶端來撥打和解碼數據 - 我建議使用SabreAMF。
這是簡單的客戶端的方法調用的代碼如下所示。
require 'SabreAMF/Client.php';
function make_request($param1,$param2){
$client = new SabreAMF_Client('http://your.server/amfphp/gateway.php');
return $client->sendRequest('your_amf_service.yourAMFmethod',array($param1, $param2));
}
你再調用這個喜歡
$result=make_request('cow',300);
,並返回一個數組。
你可能想用你所有的方法建立一個PHP類,所以你可以輕鬆地調用每一個。
AMFPHP有service browser,它允許您模擬對服務器端服務的調用並查看響應。它基本上做了一個內部的CURL請求,返回到同一個服務文件並傳遞你提供的參數,並且就像直接從客戶端Flash應用程序完成一樣。