<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    jojo's blog--快樂憂傷都與你同在
    為夢想而來,為自由而生。 性情若水,風起水興,風息水止,故時而激蕩,時又清平……
    posts - 11,  comments - 30,  trackbacks - 0
    Long weekends reduce brain cells to jelly.  Worked on a few things over the weekend, nothing really to report except write down this simple example.

    The next book has far too many XML chapters in it, or at least it seems that way at the moment.  I had a good anti-WS-bloat rant in Amsterdam recently.  In a nutshell: most of the web services stack is bloatware that doesn't get used for most applications.  90% of the time you can get away with knowing no SOAP, WSDL, or any of that stuff.  You can just use REST - Representational State Transfer.  This is basically an HTTP GET request with parameters, and in return you get an XML document, in other words XML over HTTP.   It works very nicely and is simple.  I was trying to explain this to somebody here at work, so I wrote a very basic REST server/client pair in PHP in five minutes to demonstrate.  Here's the code, which is doubled in size due to comments.

    REST server for imaginary stock price lookup

    restserver.php


     1 <?php
     2 
     3   // check which stock we want to look up
     4   $stock = $_GET['stock'];
     5 
     6   // look up the stock
     7   $price = lookup($stock);
     8 
     9   // format stock quote as XML
    10   $string = "<stockquote><stockprice>$price</stockprice></stockquote>";
    11 
    12   // make it into a proper XML document with header etc
    13   $xml = simplexml_load_string($string);
    14 
    15   // send an XML mime header
    16   header("Content-type: text/xml");
    17 
    18   // output correctly formatted XML
    19   echo $xml->asXML();
    20 
    21 // that's the end of the main code, function below is just a stub
    22 
    23   function lookup($s)
    24   {
    25     // all stocks are worth $1 for this basic example
    26     // but you would look it up in a database if you had one
    27     return 1;
    28   }
    29 

    REST client demo

    restclient.php


     1 <?php
     2 
     3 // query the REST server and load the returned XML as a PHP object
     4 // note parameters go to REST server as HTTP GET parameters
     5 $stock='MSFT';
     6 
     7 $xml = simplexml_load_file("http://localhost/demo/restserver.php?stock=$stock");
     8 
     9 echo "$stock stock price today is ";
    10 echo $xml->stockprice;
    11 
    12 ?>
    13 
    14 

    Basically you don't need to know anything about Web Services or even XML to make and consume REST Web Services.   This assertion greatly irritates a lot of people.

    I'm not saying there isn't a need for SOAP and WS-*, just that often simple tools will do the job.  It's just another version of the 80% rule.  This seems to be a theme in my personal consumption of technology.


    posted on 2008-10-07 21:16 Blog of JoJo 閱讀(1331) 評論(0)  編輯  收藏 所屬分類: Linux 技術相關

    <2025年5月>
    27282930123
    45678910
    11121314151617
    18192021222324
    25262728293031
    1234567

    常用鏈接

    留言簿(6)

    隨筆檔案

    文章分類

    文章檔案

    新聞分類

    新聞檔案

    相冊

    收藏夾

    搜索

    •  

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 亚洲国产理论片在线播放| 久久亚洲国产精品| 亚洲日日做天天做日日谢| 999国内精品永久免费视频| 亚洲第一页中文字幕| 99在线精品视频观看免费| 亚洲精品韩国美女在线| 久久精品免费全国观看国产| 亚洲一区二区三区播放在线| 一个人在线观看视频免费| 亚洲综合久久精品无码色欲| 免费看美女被靠到爽的视频| 丰满亚洲大尺度无码无码专线 | 免费观看无遮挡www的视频| 国产精品免费电影| 亚洲高清美女一区二区三区| 国产一卡2卡3卡4卡无卡免费视频| 亚洲一本之道高清乱码| 日韩中文字幕在线免费观看| 精品亚洲麻豆1区2区3区| 妻子5免费完整高清电视| 亚洲AV无码片一区二区三区 | 亚洲中字慕日产2021| 天天摸天天碰成人免费视频| 黄色一级毛片免费看| 亚洲AV无码成人精品区天堂| 亚洲国产精品无码中文lv| 亚洲精品无码久久毛片| 99re在线视频免费观看| 亚洲AV香蕉一区区二区三区| 国产综合亚洲专区在线| 2015日韩永久免费视频播放| 亚洲Av永久无码精品黑人| 亚洲日韩精品A∨片无码| av无码久久久久不卡免费网站| 色窝窝亚洲av网| 亚洲国产精品自在在线观看| 成全视频在线观看免费| 亚洲久悠悠色悠在线播放| 亚洲精品成人片在线播放| 女人18毛片特级一级免费视频|