PHP头条
热点:

这段代码的运行结果如下:

 

很酷哈?但它目前啥也干不了,那么让我们开始添加一些功能吧。我将为new_todo.php提供代码,它们调用todo/createAPI调用来创建新的TODO项。创建其他页update_todo.php和delete_todo.php)应该与此十分相似,因此我把它们留给你。打开new_todo.php,然后把下面的代码添进去:

  1. <?php  
  2. session_start();  
  3. include_once 'apicaller.php';  
  4.  
  5. $apicaller = new ApiCaller('APP001''28e336ac6c9423d946ba02d19c6a2632''http://localhost/simpletodo_api/');  
  6.  
  7. $new_item = $apicaller->sendRequest(array(  
  8.     'controller' => 'todo',  
  9.     'action' => 'create',  
  10.     'title' => $_POST['title'],  
  11.     'due_date' => $_POST['due_date'],  
  12.     'description' => $_POST['description'],  
  13.     'username' => $_SESSION['username'],  
  14.     'userpass' => $_SESSION['userpass']  
  15. ));  
  16.  
  17. header('Location: todo.php');  
  18. exit();  
  19. ?>  

正如你所看到的,new_todo.php页再次使用了ApiCaller调用来简化向API服务器所发送的 todo/create请求。这主要完成了与之前相同的事情:

  • 开启一个会话,以使其获得对存储于$_SESSION中的$username和$userpass的访问权
  • 实例化一个新的ApiCaller类,为它提供APP ID, APP KEY,以及API服务器的URL
  • 通过sendRequest()方法发送请求
  • 重定向回todo.php

 

恭喜,它好用了!你已经成功地创建了一个以API为中心的应用!

结论

围绕API创建并开发应用具有如此之多的优势。想创建一个Android版的SimpleTODO?你需要的所有功能都已经在API服务器上了,所以你所要做的就是创建客户端!想重构或者优化某些类?没问题——只要确保输出相同即可。想添加更多的功能?你可以在不影响任何客户端代码的前提下做到!

尽管存在着某些像是更长的开发时间或者更加复杂,但是以这种方式开发网络应用的优势却远比其劣势更重要。今天的这种开发由我们自己权衡取舍,从而使我们能够在将来获益。

你是准备使用一台API服务器作为你的下一个Web应用,还是已经在过去的项目中使用了相同的技术?请在评论中告知!

英文原文:Creating an API-Centric Web Application

译文链接:http://www.oschina.net/translate/creating-an-api-centric-web-application


www.phpzy.comtrue/php/20947.htmlTechArticle这段代码的运行结果如下: 很酷哈?但它目前啥也干不了,那么让我们开始添加一些功能吧。我将为new_todo.php提供代码,它们调用 todo/create API调用来创建...

相关文章

PHP之友评论

今天推荐