成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

基于JavaScript的REST客戶端框架

開發 前端
本文介紹了一個基于JavaScript的REST客戶端框架。這是一個輕量級框架,JavaScript客戶端主要使用了XMLHttpRequest對象來實現通過HTTP對服務器操作GET、PUT、POST和DELETE以檢索和修改資源。

現在REST是一個比較熱門的概念,REST已經成為一個在Web上越來越常用的應用,基于REST的Web服務越來越多,包括Twitter在內的微博客都是用REST做為對外的API,先前我曾經介紹過“基于REST架構的Web Service設計”,并給出了一些服務器端和客戶端代碼,隨著JavaScript的廣泛應用,我這里就給出一個輕量級的基于JavaScript的REST客戶端框架。

這個JavaScript客戶端主要使用了XMLHttpRequest對象來實現通過HTTP對服務器操作GET、PUT、POST和DELETE以檢索和修改資源。值得注意的是,由于安全方面的考慮,Javascript被限制了跨域訪問的能力,因此在調用XMLHttpRequest的時候,應該注意跨域訪問的問題,比如使用同一個域的動態文件做代理,或者其他方法避開跨域訪問的問題。我這里給出的代碼主要是根據我先前的那段代碼修改過來的,其客戶端JavaScript代碼如下所示:

  1. function httpGet(url, method, data) {  
  2.     var xmlhttp;  
  3.     xmlhttp = new XMLHttpRequest();  
  4.     xmlhttp.open (method, url + "?" + data, false);  
  5.     xmlhttp.setRequestHeader ("Content-Type""application/x-www-form-urlencoded; charset=UTF-8");  
  6.     xmlhttp.setRequestHeader ("Content-Length", data.length);  
  7.     xmlhttp.send (null);  
  8.     if (xmlhttp.Status = 200) return xmlhttp.responseText;  
  9. }  
  10.  
  11. function httpPost(url, method, data) {  
  12.     var xmlhttp;  
  13.     xmlhttp = new XMLHttpRequest();  
  14.     xmlhttp.open (method, url, false);  
  15.     xmlhttp.setRequestHeader ("Content-Type""application/x-www-form-urlencoded; charset=UTF-8");  
  16.     xmlhttp.setRequestHeader ("Content-Length", data.length);  
  17.     xmlhttp.send (data);  
  18.     if (xmlhttp.Status = 200) return xmlhttp.responseText;  
  19. }  
  20.  
  21. function httpPut(url, method, data) {  
  22.     var xmlhttp;  
  23.     xmlhttp = new XMLHttpRequest();  
  24.     xmlhttp.open (method, url, false);  
  25.     xmlhttp.setRequestHeader ("Content-Type""application/x-www-form-urlencoded; charset=UTF-8");  
  26.     xmlhttp.setRequestHeader ("Content-Length", data.length);  
  27.     xmlhttp.send (data);  
  28.     if (xmlhttp.Status = 200) return xmlhttp.responseText;  
  29. }  
  30.  
  31. function httpDelete(url, method, data) {  
  32.     var xmlhttp;  
  33.     xmlhttp = new XMLHttpRequest();  
  34.     xmlhttp.open (method, url + "?" + data, false);  
  35.     xmlhttp.setRequestHeader ("Content-Type""application/x-www-form-urlencoded; charset=UTF-8");  
  36.     xmlhttp.setRequestHeader ("Content-Length", data.length);  
  37.     xmlhttp.send (null);  
  38.     if (xmlhttp.Status = 200) return xmlhttp.responseText;  
  39. }  
  40.  
  41. function test() {  
  42.     document.write (httpGet("http://localhost/rest/service.asp""GET""do=GET"));  
  43.     document.write (httpGet("http://localhost/rest/service.asp""POST""do=POST"));  
  44.     document.write (httpGet("http://localhost/rest/service.asp""PUT""do=PUT"));  
  45.     document.write (httpGet("http://localhost/rest/service.asp""DELETE""do=DELETE"));  
  46. }  

我這里使用這個代碼編寫了一個簡單的應用例子,就是管理Twitter好友的應用,大家點這里可以下載使用,因為跨域訪問的問題,這段JavaScript只支持IE在本地使用。

【編輯推薦】

  1. 如何優化JavaScript腳本的性能
  2. JavaScript控制Excel打印完美解決方案
  3. 用Javascript連接Access數據庫的方法
  4. JavaScript的document和window對象詳解
  5. 淺談JavaScript中面向對象技術的模擬
責任編輯:yangsai 來源: 月光博客
相關推薦

2012-09-19 14:27:16

Worklight

2012-11-28 11:05:42

IBMdW

2014-03-10 10:22:40

JavaScriptJS弊端

2011-08-15 14:09:59

JavaHBase

2011-04-22 10:34:09

SimpleFrame

2009-03-18 14:44:34

LinuxqTwitterTwitter

2015-06-03 09:27:05

JavaScript客戶端檢測技術

2014-01-07 14:39:26

Android開發RxJavaREST

2021-09-22 15:46:29

虛擬桌面瘦客戶端胖客戶端

2016-11-14 18:02:50

2016-10-09 08:35:09

Linux桌面REST

2025-01-07 08:10:00

CefSharpWinformWindows

2012-12-07 10:15:53

IBMdW

2024-12-02 09:19:44

2011-03-21 14:53:36

Nagios監控Linux

2011-04-06 14:24:20

Nagios監控Linux

2011-08-17 10:10:59

2009-06-23 14:00:49

JavaFX開發

2024-01-17 19:05:44

mget優化數據庫

2015-01-13 10:32:23

RestfulWeb框架
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 亚洲免费久久久 | 青青草亚洲| 色播99 | 青青草视频免费观看 | 国产精品欧美一区二区三区 | 免费看黄视频网站 | 久久国内精品 | 日本黄色高清视频 | 欧美日本在线观看 | 天天综合网91 | 伊人影院在线观看 | 久久久精品综合 | 日本超碰在线 | 99免费看 | 色悠悠久 | 国产99久久久国产精品 | 精品国产一区二区三区久久久久久 | 久久久久黄色 | 精品一区二区久久久久久久网精 | 日本福利在线观看 | 一区二区手机在线 | 精品福利视频一区二区三区 | 久久国产精品免费一区二区三区 | 国产日韩欧美一区 | 高清一区二区三区 | 97国产精品| 欧美精品在线免费 | 亚洲综合热| 一区二区三区不卡视频 | 欧美一区二区在线观看 | 国产一区二区视频免费在线观看 | 黄频免费 | 97av视频在线 | 草久免费视频 | 久热精品免费 | 久久精品久久久久久 | 亚洲综合日韩精品欧美综合区 | 99免费在线视频 | 伊人春色成人 | 99国产精品视频免费观看一公开 | 国产精品观看 |