<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 閱讀(1335) 評論(0)  編輯  收藏 所屬分類: Linux 技術相關

    <2025年7月>
    293012345
    6789101112
    13141516171819
    20212223242526
    272829303112
    3456789

    常用鏈接

    留言簿(6)

    隨筆檔案

    文章分類

    文章檔案

    新聞分類

    新聞檔案

    相冊

    收藏夾

    搜索

    •  

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 91人成网站色www免费下载| 女人被男人桶得好爽免费视频 | 日本在线看片免费人成视频1000| 亚洲av不卡一区二区三区| 免费无码又黄又爽又刺激| 一区二区免费电影| 亚洲精品成人久久| 午夜亚洲av永久无码精品| 精品亚洲永久免费精品| 亚洲欧美乱色情图片| 久久久久久久综合日本亚洲| 一个人免费观看www视频在线| 免费国产在线精品一区| 亚洲精品高清国产麻豆专区| 免费日韩在线视频| 亚洲一区二区三区免费观看| 特级av毛片免费观看| 亚洲神级电影国语版| 亚洲视频在线精品| 久久天天躁狠狠躁夜夜免费观看| 一区二区3区免费视频| 久久亚洲最大成人网4438| 亚洲无线码一区二区三区| 成人超污免费网站在线看| 最近2019中文免费字幕在线观看 | 美女视频黄频a免费大全视频| 亚洲av福利无码无一区二区| 国产大片91精品免费观看男同| 91香蕉国产线在线观看免费| 猫咪免费观看人成网站在线| 亚洲黄页网在线观看| 亚洲免费在线视频| 区久久AAA片69亚洲| 国产成人精品免费大全| 亚洲熟妇无码av另类vr影视| 婷婷亚洲综合五月天小说| 久久精品亚洲福利| 免费国产成人高清在线观看麻豆| 中文字幕av无码无卡免费| 99精品在线免费观看| a毛片在线免费观看|