首页 黑客接单正文

php写app接口(php可以做什么接口)

用PHP写手机端APP数据接口和PC端数据接口有什么不一样?

都一样的 只是由于app不是浏览器不能正常使用cookie所以不支持session认证 在做app接口的时候一般都会使用自己定义的token来认证 其他的都是一致的

PHP给APP写接口怎么写

找个框架吧,很多框架有为接口设计的功能

Larvel

ThinkPHP5

等等。

如果要用原生PHP写,需要做到以下几点:

兼容输入

请求数据的数据体 有 POST(form-data和form-urlencoded两种),BIN,RAW几种,接口一般需要兼容这几种数据提交方式

统一错误输出

有全局统一的错误代码

可以捕捉系统异常并以接口格式返回错误信息或预定义信息

返回格式定义

一般主流支持json格式返回,但更好能做到根据参数可以自定义返回格式(如 xml或json)

授权方式及权限分配

比较常见的OAUTH授权等。

不同接口按更低需求授与对应账户权限

用thinkphp写一个app登录的接口 麻烦哪位大神给个事例

1、可以使用 REST模式 来开发 App 接口,首先建立一个公共控制器,再建其他控制器继承它即可。

2、确定好返回的数据内容格式及信息码;

?php

// App接口公共控制器 AppController

namespace Api\Controller;

use Think\Controller\RestController;

class AppController extends RestController {

// 自动加载的东西

function _initialize() { }

// 验证 客户端 token

protected function checkAppToken($apptoken){

// 引入 function.php 中定义的检测 apptoken 的函数

if(checkingAppToken($apptoken)){

return true;

}else{

$data['code'] = '404';

$data['msg'] = 'apptoken无效';

$data['data'] = null;

$this - response($data, 'json');

exit();

}

}

// 验证 用户 token

protected function checkUserToken($usertoken){

}

// 各种验证 ……

}

?

复制代码

其他接口控制器继承 AppController

?php

// 内容控制器 ContentsController

namespace Api\Controller;

class ContentsController extends AppController {

// 自动加载验证

function _initialize() {

parent::_initialize();

// 验证 客户端 token

$apptoken = I('post.apptoken');

parent::checkAppToken($apptoken);

// 验证 用户 token

$usertoken = I('post.usertoken');

parent::checkUserToken($usertoken);

// 各种需要验证的验证 ……

}

// 各种业务 ***

public function index(){

// 返回数据

$this - response($data, 'json');

exit();

}

}

?

求教php 做APP接口 整个通信流程

我写过几个APP,可以分享经验给你~

1、你可以把app的请求当成get或者post请求,PHP直接可以用$_GET、$_POST接收,你也可以理解成ajax,当然$_FILES肯定是不能用的

2、上传图片要使用二进制流,PHP端这一届file_put_contents 写成一个图片文件

3、不要用$_SESSION。因为app的每次请求都会重新刷新session_id,就相当于一个新的访客

4、因为不能用session所以会员中心这块要设计成token。逻辑就是APP端调用php的登录接口(接口返回一个唯一的字符串,这个串就是token)并且登录成功后把token保存起来,每次登录都刷新这个token。有涉及到会员的接口调用时都要传这个token,PHP根据token来查找是哪个用户。

PHP开发APP接口需要注意哪些问题

PHP开发APP接口需要注意下面问题:

1.制定规范

开发前一定要定好一个规范,比如要定好数据返回的通用参数和格式。关于数据格式,用的比较多的有xml和json,我建议用json,因为json比xml的好处更多。

2.精简的返回数据

接口数据因符合需要什么返回什么的原则,比如要查询某个用户的余额和注册时间,网页里面的做法可能是select * from user where

uid=1,但是接口一定要select balance,regtime from user where

uid=1。因为接口返回数据是要有开销的,要流量的,能少返回数据就尽量少返回,这样可以大大的提高性能。

3.数据类型要严格

要注意数据的类型,整数类型的数据一定要转为int,因为app客户端开发的java、object-c语言对数据类型比较严格,类型不对会照成app闪退。

4.要写接口文档

一定要写好接口文档,并按照模块写,而且还要书写规范,更好的格式是:

接口请求地址;请求参数(包括参数名、类型、是否必填);测试参数举例;返回参数(参数名,并注明每个参数的含义)。

这样哪怕以后项目很大,以不会照成维护困难的问题。

5.保证代码正确性

要验证保证代码正确无误,而且生成环境中要屏蔽掉错误,避免头部有额外的输出,照成返回的json等数据解析失败而导致app闪退等。

6.要优化代码的性能

app要求响应迅速,这样才能给用户比较好的体验感。所以移动接口端在处理业务逻辑的时候,要避免不要执行太复杂的sql语句,或者含有大量的循环,能做成缓存的尽量做缓存,比如将首页的热点模块信息可以存到redis缓存中。在不考虑网速的情况下,比较理想的接口响应时间应该是200毫秒以内。

7.不要随意更改旧接口

app不像网页,app一旦发布,有人使用之后,接口就不要乱修改了。以后升级也是,修改要在保证接口原有结构之上进行额外的扩展,否则会导致调用旧版接口的app出现bug。

8. 注意接口的安全

安全高于一切,必须要保证接口的安全。 *** 号码等敏感信息在传输的过程中一定要加密,否则可能会被别人抓包到。拿取用户信息的接口一定要验证权限,以防止接口被恶意调用,泄密用户信息,甚至篡改信息。

版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。