flex php 簡單通訊例項

2022-07-12 20:24:21 字數 1390 閱讀 8955

flex很強大,但如果想讓flex運算元據庫的話必須要通過其他的指令碼語言,可以是php或者asp.net。我嘗試用flex和php通訊,測試成功。開始的時候是從網上搜其他人的經驗,但放在自己這裡總是無法除錯通過,出現各式各樣,莫名其妙的錯誤。然後參考flex官方文件和例項。在flex的手冊中,搜尋「httpservice」,有這樣的描述:在 mxml 檔案中使用 標籤代表 httpservice 物件。當呼叫 httpservice 物件的 send() 方法時,將發出對指定 url 的 http 請求,並且返回 http 響應。可以選擇向指定 url 傳遞引數。如果沒有使用基於伺服器的**服務,則只能使用 http get 或 post 方法。如果將 useproxy 屬性設定為 true 並使用基於伺服器的**服務,則還可以使用 http head、options、trace 和 delete 方法。

看過手冊中httpservice的屬性和方法,又讀了官方的例項原始碼,我寫了flex和php通訊的例子。程式是從flex向php提交乙個數字,php先判斷一下是否是數字,如果是的話,把這個數字乘以10之後返回;如果不是則返回中文提示資訊「不是數字」。

原始碼如下:

demo.mxml的源**:

<?xml version="1.0" encoding="utf-8"?>

import

mx.rpc.events.resultevent;

import

mx.rpc.events.faultevent;

import

mx.controls.alert;

public

function

handlexml(event:resultevent):void

public

function

handlefault(event:faultevent):void

]]>

php的原始碼(demo.php)如下:

<?php

if (is_numeric($_request["data1"]))

else

$results = "";

$results = "".$returndata."

";

$results = "";

print

implode("\n", $results);

exit

;?>

如果碰到輸入的字元不是數字,但在flex中沒有顯示「不是數字」,而是顯示亂碼的情況,可以將demo.php檔案另存為utf-8的格式即可看到正確的中文。在httpservice中,還可以增加method的屬性,值可以設定為post或者get,預設為get。增加此屬性後,php中的$_request["data1"]就可以寫成$_get["data1"]或者$_post["data1"]

socket的簡單通訊例項

分為服務端和客服端,先看服務端吧 做乙個控制台程式,using system using system.collections.generic using system.text using system.net using system.net.sockets namespace socket r...

基於TCP的簡單通訊例項

程式設定了連線數限制,當連線伺服器的數量超過3時,不再接受其他連線。且只實現了客戶端與伺服器之間的通訊。伺服器端 using system using system.collections.generic using system.componentmodel using system.data u...

AJAX簡單非同步通訊例項分析

客戶端 向伺服器發出乙個空請求。如下 伺服器端 向客戶端直接返回乙個字串。如下 複製 如下 response.write 非同步測試成功,很高興 問題一 由於ie 瀏覽器會自動快取非同步通訊的結果,不會實時更新伺服器的返回結果。但firefox 會正常重新整理 為了解決非同步連線伺服器時ie 的快取...