【问题标题】:create api using php使用php创建api
【发布时间】:2017-07-31 09:42:52
【问题描述】:

我想用php开发一个简单的api。

我的功能是,如果有人输入一些必需的值,那么他们将从我网站旁边的算法中得到计算结果。

我没有从哪里开始。 并且也没有获得任何使用 PHP 的 API 示例代码。

【问题讨论】:

  • 您希望人们如何连接到您的 API?
  • 你说的是方法吗?获取或发布?

标签: php api


【解决方案1】:

听起来您想创建一个其他人可以连接、发送答案和检索结果的网络服务。

如果是这种情况,您有三个选项,SOAP、XML-RPC 和 REST。如果它是一个简单的 API,那么 SOAP(可能还有 XML-RPC)将是多余的——您不想创建 WSDL 文件,安装一个 SOAP 服务器库(尽管 Zend_Soap 足够好)。另一方面,REST 将允许任何人轻松使用您的 API。

让我们看一个例子,假设你想提供一个简单的“求和”服务(即添加几个数字),你可以有一个这样的 URI 方案:

http://example.com/sum

将数字 5、8 和 9 相加,您的 Web 服务用户只需执行 HTTP GET 即可

http://example.com/sum/5/8/9

让我们暂时假设求和实际上是一项计算量非常大的任务,通过使用 REST 和 GET,您可以利用 HTTP 缓存,这样当有人发送相同的参数进行计算时,您的服务器就不会经常受到攻击。

如果您的 Web 服务具有非无副作用的资源(即它更改了数据库中的某些内容),您应该使用 PUT、POST 或 DELETE(PUT 用于更新,POST 用于创建,DELETE 用于删除)作为HTTP 规范声明 GET 不应该有副作用。同样,如果返回错误或网络连接超时,重复 PUT 和 DELETE 应该是安全的。

这里有关于 REST 的精彩演讲(视频和幻灯片):http://www.parleys.com/display/PARLEYS/Home#talk=31817742

【讨论】:

  • 感谢您提供的信息,但我对此很陌生。我没有得到解决这个....
  • REST 非常简单,只需让您的 PHP 文件查看作为 URI 的一部分传递的值,提取它们,进行计算并简单地输出 - 工作完成。
【解决方案2】:

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 格式输出等

【讨论】:

    【解决方案3】:

    哈伊阿维纳什, 看看这个Create Your Own Custom API

    【讨论】:

      【解决方案4】:

      API 通常是您创建的,以便其他开发人员更轻松地访问您的程序。

      但是从您所做的事情的声音来看,您似乎只需要创建一个简单的页面来执行一些计算,并且您可能不需要 API。

      我建议先学习一些通用的PHP tutorials,然后再学习一些processing forms

      【讨论】:

        【解决方案5】:

        最好和最简单的方法是使用框架和工具。

        我使用 APIATO (https://github.com/apiato/apiato),它是一个完美的框架,用于使用 PHP 和 Laravel 构建可扩展和可测试的以 API 为中心的应用程序。

        检查一下。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2017-03-05
          • 2014-03-24
          • 1970-01-01
          • 1970-01-01
          • 2011-04-14
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多