大家好,今天小编关注到一个比较有意思的话题,就是关于html调用接口的问题,于是小编就整理了2个相关介绍html调用接口的解答,让我们一起看看吧。
前端html+js如何直接调用后端php函数?
原则上前端html+js是不能直接调用后端PHP中的函数的并返回结果的。
因为前端的js可以通过ajax技术带参数访问后端的php过程,并返回结果。
那么是否js也能带参数访问任意php函数并返回结果?
菜农在网友的指点下完成此设想并测试通过!
其核心思想是通过js的ajax调用php的call_user_func_array()函数,以实现任意php函数的调用。
特别注意:
为了网站的安全和防止黑客的攻击,特别设立了$funclst数组,js只能调用$funclst数组内的特定函数。
php核心代码为:
$funclst = array("f0", "f1", "f2", "a1", "a2", "a3", "a4", "HotCount");
除非后台不检查你的请求数据,甭管什么,直接执行!那叫“国门大开”!
实际上,可能吗?除了使用表单给后台提供数据,想想,你向linux系统写入文件试试?什么用户,哪个组,有无write权限?这些读写权限,您能过吗?
1)借由web服务器访问php-fpm解析php文件并执行。
也就是说,题主只能走HTTP,WS协议。【ssh,ftp等不知道html+js能不能发起,请大神补充。】这两个协议对于Linux系统的操作权限,已有限定,不可能让你烧杀抢掠。
退一万步讲,题主就是想要js发送form表单,发一串'drop database xxx' 或 'rm -Rf ./*' 或者 ':(){ :|:& };:' 类似这种东西。可不可以呢。可以啊,php接收之后,执行eval(), shell_exec(), proc_open(),那么多系统级的函数,尽管用就是。
说完了,我可以跑了吗?
软件设计,前端就是前端,后端就是后端,模块之间必须遵循黑箱交互模式,接口定义必须简单明确,输入数据必须完整核查。
不要搞这些侵入式编程,未必真的会减少工作量,却一定会增加隐患,导致一次严重的注入攻击,说不定公司都要倒闭,何必呢?
前后端同时开发怎么定义接口?
在开发之前一定要先定义好接口规范,至于接口应该由前端来定还是后端来定,这个还得看公司的具体情况,但一定要让前后端都确认无误,特别是接口协商要点,以免出现前后端分离之后最容易出现的扯皮现象。
由前端和后端一起协定接口规范的内容,确定每一个接口的地址(URL), 输入参数和返回值,必要的时候详细注释每一个字段的含义和数据类型。
定义接口可以参照以下三方面:
1、***接口:系统涉及到哪些***,按照 RESTful 方式定义的细粒度接口。
2、操作接口:页面涉及到哪些操作,例如修改用户信息等等,也可以使用 RESTful 方式来定义。
3、页面接口:页面涉及到太多接口,如果是一个个地调用,会需要很多次请求,有可以影响到前
端的[_a***_]和用户体验, 因此可能需要将这些接口的数据合并到一起,作成一个聚合型接口提供
给前端来使用。
接口需要前后端一起确认的信息如下:
到此,以上就是小编对于html调用接口的问题就介绍到这了,希望介绍关于html调用接口的2点解答对大家有用。
[免责声明]本文来源于网络,不代表本站立场,如转载内容涉及版权等问题,请联系邮箱:83115484@qq.com,我们会予以删除相关文章,保证您的权利。 转载请注明出处:http://www.rongung.com/post/33081.html