PHP写一个POST方式API供用户使用。服务端代码应该怎么写?
接口无非就是接受数据然后处理返回结果,客户端接收结果数据处理/*api xxxxx.php*/$data = $_POST;数据处理.....return json_encode($redata)
;/*客户端js*/ $.post('xxxxx.php',data,fucnction(datas){ 处理结果 });类似上面的处理流程
Get请求和Post请求区别是什么?
它们有以下区别:
1.参数传递方式不同
get请求:将请求参数放在url后面,形如“http://www.example.com/index.php?param1=value1¶m2=value2”,多个参数之间用“&”连接。
post请求:将请求参数放在请求体中,请求头中需要设置content-type为application/x-www-form-urlencoded或multipart/form-data。
2.请求数据大小限制不同
get请求:由于参数是直接拼接在url中,所以url长度是受限制的,浏览器和服务器都会限制url长度,一般为2048字节。
post请求:没有长度限制,但是服务器端和客户端都可以设置最大请求体大小,超过限制可能会被拒绝或截断。
3.安全性不同
get请求:请求参数直接暴露在url中,不安全,容易被第三方截取和篡改。
post请求:请求参数放在请求体中,相对安全,但也可以通过抓包等手段获取参数值。
4.缓存策略不同
get请求:可以被浏览器缓存下来,下次请求时如果缓存未失效,直接从缓存中读取数据,减少网络流量和服务器压力。
post请求:不能被浏览器缓存。
5.使用场景不同
get请求:一般用于获取数据,比如查询、搜索等操作。
post请求:一般用于提交数据,比如表单提交、文件上传等操作。
PHP的异步并行网络扩展swoole如何使用?
1、node.js 没有内置对多线程/多进程的支持,用户必须使用 cluster/child_process 等扩展自行实现并行。swoole 内置对多线程/多进程的支持,用户仅需配置参数即可。
Swoole 是一个 PHP 扩展框架,不是一门语言,为什么要比较一个框架和另一门裸语言运行环境,还不许别人用扩展?
Node.js 对应和比较的对象,应该是Apache 或 fast-CGI。
2、node.js 仅支持异步。swoole 同时支持同步/异步 2 种模式。
更何况 async/await 语法出现后,这再也不是一个问题了,你可以以同步的模式来书写异步程序。
3、node.js 没有内置通用协议处理的支持,需要自行实现代码。swoole 内置了通用协议处理的支持,可以借助 swoole 提供的功能轻松实现。
是,自行实现,但是只需要几行代码而已。而获得的好处是,精确而透明地控制每个细节,比如根据 head 中的身份验证,决定是否接收 POST 请求剩余的 body 部分。
4 、swoole 内置了对 TCP 心跳检测的支持。node 无。
5、swoole 2.x 内置协程。node 无。
Node.js 支持 PHP 不支持的东西多了,怎么不提。随便说一个,PHP 里对象属性名不能是空字符串(我记得会自动变成类似 empty 的字符串属性名),parse 时差点晕倒。用关联数组,又无法区分进行 stringify 了。
还没有评论,来说两句吧...