【发布时间】:2017-07-31 09:42:52
【问题描述】:
我想用php开发一个简单的api。
我的功能是,如果有人输入一些必需的值,那么他们将从我网站旁边的算法中得到计算结果。
我没有从哪里开始。 并且也没有获得任何使用 PHP 的 API 示例代码。
【问题讨论】:
-
您希望人们如何连接到您的 API?
-
你说的是方法吗?获取或发布?
我想用php开发一个简单的api。
我的功能是,如果有人输入一些必需的值,那么他们将从我网站旁边的算法中得到计算结果。
我没有从哪里开始。 并且也没有获得任何使用 PHP 的 API 示例代码。
【问题讨论】:
听起来您想创建一个其他人可以连接、发送答案和检索结果的网络服务。
如果是这种情况,您有三个选项,SOAP、XML-RPC 和 REST。如果它是一个简单的 API,那么 SOAP(可能还有 XML-RPC)将是多余的——您不想创建 WSDL 文件,安装一个 SOAP 服务器库(尽管 Zend_Soap 足够好)。另一方面,REST 将允许任何人轻松使用您的 API。
让我们看一个例子,假设你想提供一个简单的“求和”服务(即添加几个数字),你可以有一个这样的 URI 方案:
将数字 5、8 和 9 相加,您的 Web 服务用户只需执行 HTTP GET 即可
让我们暂时假设求和实际上是一项计算量非常大的任务,通过使用 REST 和 GET,您可以利用 HTTP 缓存,这样当有人发送相同的参数进行计算时,您的服务器就不会经常受到攻击。
如果您的 Web 服务具有非无副作用的资源(即它更改了数据库中的某些内容),您应该使用 PUT、POST 或 DELETE(PUT 用于更新,POST 用于创建,DELETE 用于删除)作为HTTP 规范声明 GET 不应该有副作用。同样,如果返回错误或网络连接超时,重复 PUT 和 DELETE 应该是安全的。
这里有关于 REST 的精彩演讲(视频和幻灯片):http://www.parleys.com/display/PARLEYS/Home#talk=31817742
【讨论】:
API 是一些可以从另一个应用程序调用的方法。 “philjohn”表示最简单的 API 就是使用 REST 技术。
这是使用 PHP 创建 API 的简单示例,假设您使用以下 URL 创建名为“sum”的新 API:http://localhost/v1/api.php?method=sum&var1=4&var2=5
在文件 api.php 中你可以这样编码:
<?php
if($_GET['method'] == 'sum')
{
return $_GET['var1'] + $_GET['var2'];
}
这只是如何创建 API 非常简单。高级 API 将涉及变量检查、连接数据库、以 xml 或 json 格式输出等
【讨论】:
哈伊阿维纳什, 看看这个Create Your Own Custom API
【讨论】:
API 通常是您创建的,以便其他开发人员更轻松地访问您的程序。
但是从您所做的事情的声音来看,您似乎只需要创建一个简单的页面来执行一些计算,并且您可能不需要 API。
我建议先学习一些通用的PHP tutorials,然后再学习一些processing forms。
【讨论】:
最好和最简单的方法是使用框架和工具。
我使用 APIATO (https://github.com/apiato/apiato),它是一个完美的框架,用于使用 PHP 和 Laravel 构建可扩展和可测试的以 API 为中心的应用程序。
检查一下。
【讨论】: