草庐IT

PHP API 最佳实践 - 回显 json_encoded 对象 : bad or good?

我提前向您道歉,因为我的问题措辞有问题,但请耐心等待,我会尽量做到准确。但是,我的问题有点含糊,很难问。我最近一直在与我的一位同事讨论通过PHP从RESTfulAPI发回的响应。我们的不同之处在于我们对服务器的响应。他的论点是只对原始对象(它是数据库表中一行数据的PHP对象表示)进行json_encode。但是,我发现的问题是,例如,您只需要发回几列数据的情况。例如,假设您要返回一个对象,您只需要表中的主键、描述和名称即可。但是,该对象还具有其他用途的属性(var1、var2等)如果像这样回显:echo(json_encode($object));JSON看起来像这样:{"primar

php - 使用带有多个参数的 yii\rest\UrlRule 的 Yii2 路由

我正在尝试为RESTAPI使用Yii2路由。以下教程位于http://www.yiiframework.com/doc-2.0/guide-rest-routing.html,我已经(成功地)为API入口点定义了很多规则,如下所示:'urlManager'=>['enablePrettyUrl'=>true,'enableStrictParsing'=>true,'showScriptName'=>false,'rules'=>[['class'=>'yii\rest\UrlRule','controller'=>'user'],],]这样的规则定义:GET/users(列出用户)GE

php - PayPal REST API 获取总金额

我正在使用最新版本的PayPalrest-api-sdk-php。在创建付款和执行付款以及取回所有相关数据方面一切正常,但我决定要通过Paypal支付总金额。它返回一个JSON对象,如下例"transactions":[{"amount":{"total":"20.00","currency":"GBP","details":{"subtotal":"17.50","tax":"1.30","shipping":"1.20"}},"description":"Paymentdescription","invoice_number":"55e30dbd55cea","item_list"

php - 为什么 Laravel REST Controller $request->input 为 NULL?

我正在学习教程http://www.tutorials.kode-blog.com/laravel-5-angularjs-tutorial我已经设法为我的Controller编写了类似的方法:publicfunctionupdate(Request$request,$id){$employee=Employee::find($id);$employee->name=$request->input('name');//...$employee->save();return"Sucessupdatinguser#".$employee->id;}在教程中认为此代码有效,但实际上var_d

php - Codeigniter 应用程序中的 API 集成

我正在尝试将MyOperator的API集成到我的CRM项目中,该项目是在CodeIgniter中开发的。为此,他们为我提供了一些代码,但是当我尝试在我的应用程序中使用该代码时,它为我提供了JSON数据和404pagenotfounderror这是他们提供的代码:developers_url.'search';$fields=array("token"=>$this->token);$result=$this->_post_api($fields,$url);$this->log("result");$this->log($result);}privatefunction_post_a

php - php mvc framework agavi 是否使用符合 REST 的 CRUD?

agavi框架使用PUT请求创建信息,使用POST更新信息。通常在REST中,这是相反的用法(通常指的是POST添加信息,而PUT替换整个数据记录)。如果我没理解错的话,重要的是PUT必须是幂等的,而POST没有这个要求。因此,我想知道如何创建新记录是幂等的(即多个请求不会导致多次创建记录),特别是当ORM通常使用id作为主键并且不知道新记录的id时给客户端(因为它是在数据库中自动创建的),因此不能成为请求的一部分。agavi如何针对PUT请求保持幂等性的要求。谢谢。 最佳答案 PUT可用于创建和更新完整记录。POST通常用于部分更

php - 在 PHP 中创建 Web 服务

我想用PHP创建一个可供不同消费者(网页、Android设备、iOS设备)使用的Web服务。我来自Microsoft背景,所以我对如何使用C#等进行操作感到很自在。理想情况下,我希望能够提供可以发送JSON的REST服务。您能告诉我如何在PHP中实现这一点吗?谢谢塔里克 最佳答案 我开发了一个类,它是PHPnativeSoapServer类的REST等效类。您只需包含RestServer.php文件,然后按如下方式使用它。classHello{publicstaticfunctionsayHello($name){return"He

php - 是否可以在不使用任何库的情况下在 PHP 中使用 POST 请求创建 Restful Web 服务?

基本要求是知道当请求主体有效载荷以json格式发送数据时我们是否可以遍历$_POST,例如{"City":{"countryCode":"IN","regionCode":"KR"}}只有当我们发送数据时我们才能访问它m={"City":{"countryCode":"IN","regionCode":"KR"}}我们可以使用$_POST['m']访问它Content-Type默认设置为application/x-www-form-urlencoded,当我们将其设置为application/json时,$_POST是空/无效。如果我们尝试以$_POST而不是$_POST['m']访问

php - Yii 覆盖通用 Rest 函数

我是yii2的新手。我想在yii框架中编写restfulapi。经过3天的搜索,我能够运行Restful服务示例。我发现yii会自动生成索引、查看、创建、更新、删除这些方法。自定义索引、创建、更新、删除方法怎么办?因为我只找到了自定义索引函数输出的方法,即prepareDataProvider。如果我添加新方法,我会怎么做?或者,如果yii不提供创建、更新和删除方法的自定义,那么编写自己的自定义方法是否更好。 最佳答案 您始终可以通过在ActiveController类中定义actions()方法来覆盖原始行为。这是一个例子:pub

php - 找不到类 'Twilio\Rest\Client'

我正在尝试使用twiliophpapi。这是我的代码:messages->create($phone,array('from'=>'xxxxxxx','body'=>$code));它给了我这个错误:Fatalerror:Class'Twilio\Rest\Client'notfoundin/home/vhosts/xxxx.xxxx.com/twilio/sms.phponline9我也试过这段代码,但没有用:messages->create($phone,array('from'=>'xxxxx','body'=>$code));它给了我这个错误:Fatalerror:requir