lure.tuts.xmlhttprequest (日本語)

XMLHttpRequest の使用方法

Lure にはHTTP リクエストを作成する機能があります。これは DOM XMLHttpRequest オブジェクトへ既に利用可能な socket.http ライブラリを包むことで達成します。 Lure による XMLHttpRequest の実装では同時・非同期 HTTP リクエストに対応しています。

私は黙って使用方法を教えます!!

GET リクエスト

function love.load()
	
	-- lure ライブラリを要求します。
	require('lure//lure.lua')

	-- XMLHttpRequest オブジェクトの新規作成をします。
	http = XMLHttpRequest.new()

	-- 新規リクエストの作成、メソッド、 URL, および同期オプションを設定します。
	http.open("GET", "http://www.love2d.org/", true)
	
	-- readyState リクエストが変更された時に発生するコールバック関数を作成します。
	http.onReadyStateChange = function()
		print(http.readyState)
		print(http.status)
		print(http.statusText)
		print(http.responseText)	
	end

	-- GET リクエストの送信!
	http.send()
end

POST リクエスト

function love.load()

	-- lure ライブラリを要求します。
	require("lure//lure.lua")		

	-- XMLHttpRequest オブジェクトの新規作成をします。
	http = XMLHttpRequest.new()
	
	-- URL, および POST 引数 (params) を設定します。
	url 	= "http://mydomain.com/"
	params 	= "a=1&b=2"
	
	-- 新規リクエストの作成、メソッド、 URL, および同期オプションを設定します。
	http.open("POST", url, true)		

	-- リクエスト・ヘッダを設定します。	
	http.setRequestHeader("Content-Type", "application/x-www-form-urlencoded")
	http.setRequestHeader("Content-Length", params:len())
	
	-- readyState リクエストが変更された時に発生するコールバック関数を作成します。
	http.onReadyStateChange = function()
		print(http.readyState)
		print(http.status)
		print(http.statusText)
		print(http.responseText)		
	end

	-- POST リクエストの送信!
	http.send(params)
	
end

そのほかの言語