各类知识收集,PHP技术分享与解决方案各类知识收集,PHP技术分享与解决方案各类知识收集,PHP技术分享与解决方案

Str Tom,为分享PHP技术和解决方案,贡献一份自己的力量!
QQ:420220301 微信/手机:150-3210-7690
当前位置:首页 > CMS教程 > PHP

PHP后端接口怎么写

管理员 2023-09-05
PHP
170

PHP后端接口怎么写

内容导读

收集整理的这篇技术教程文章主要介绍了PHP后端接口怎么写,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含3022字,纯文字阅读大概需要5分钟

内容图文

php后台接口的实现方法

1. 首先,要设置一个入口文件

入口文件的话会引入到固定的api文件(如下):

<?phpdefine("APPAPI_ALLOW_REQUEST_LOGIN", 'Y');  //是否允许传用户名密码参数的形式登录。如为Y则参数用户名密码参数和basic方式都可以,如为N就只能basic方式。//define("SITE_TEMPLATE_PATH", '/local/templates/mobile_app_api');    //如不定义,默认是local/templates/bitrix24。可以考虑将/local/templates/mobile_app留给h5前端展示用。新开/local/templates/mobile_app_api给api用。如不指定SITE_TEMPLATE_PATH直接IncludeComponent,则对组件代码进行debug时,会出现web端头部页面。//require_once($_SERVER['DOCUMENT_ROOT'] . '/bitrix/header.php');  //需要模板页面Header('Access-Control-Allow-Origin: *');Header('Access-Control-Allow-Headers: origin, content-type, accept');Header('X-Content-Type-Options: nosniff');require("remote_auth.php");//app方式每次请求session_id()都会变,导致挂钩在session_id()下面的所有session信息如fix_session_id也都不认。所以登录完毕后要拿到session_id(),并在后续接口一起传给接口,接口再去指定session_id。//$_REQUEST['org_sessid']='06q75330o31se1cf4d7vl1bdm4';if(!empty($_REQUEST['org_sessid'])){    $org_session_id=$_REQUEST['org_sessid'];    session_id($org_session_id);    session_start();    //echo session_id();    //echo "<pre>";print_r($_SESSION);exit;}require_once($_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/main/include/prolog_before.php");   //无需模板页面$APPLICATION->IncludeComponent("vdg:mobile.data", "", Array());exit;?>

2. 其次,在引入的组件的component.php中获取参数,确定模板的使用

<?php...include_once(dirname(__FILE__) . "/functions.php");//引入类的方法的文件...if ($_REQUEST["mobile_action"])//Executing some action{    $APPLICATION->RestartBuffer();    $action = $_REQUEST["mobile_action"];    //CRestUtil::sendHeaders();  //跨域header    $actionList = new BitrixMobileAction();    $actionList->executeAction($action, $arParams);    CMain::FinalActions();    die();}elseif ($_REQUEST["captcha_sid"])//getting captcha image  通过 /vdg/app_api.php?captcha_sid=1 可以得到图形验证码。{    $APPLICATION->RestartBuffer();    $actionList = new BitrixMobileAction();    $actionList->executeAction("get_captcha", $arParams);    die();}elseif ($_REQUEST["manifest_id"])//getting content of appcache manifest{    include($_SERVER["DOCUMENT_ROOT"] .BitrixMainDataAppCacheManifest::MANIFEST_CHECK_FILE);    die();}elseif(!$USER->IsAuthorized() || !$isSessidValid){    $APPLICATION->RestartBuffer();    header("HTTP/1.0 401 Not Authorized");    if(BitrixMobileAppMobile::getInstance()->getInstance() != "android")    {        //header("Content-Type: application/x-javascript");        header("Content-Type: application/json");        header("BX-Authorize: ".bitrix_sessid());    }    jsonError('201', '请先登陆');       //echo json_encode(Array("status" => "failed", "bitrix_sessid"=>bitrix_sessid()));    die();}?>

3.在具体的模板中运用类的方法根据参数获取相应的数据,并返回客户端结果

如果成果返回“ jsonSuccess(questions);”如果失败返回“jsonError(′201′,questions);”

如果失败返回“jsonError(′201′,questRes[“ERROR”]);”或其他错误讯息。

推荐教程:PHP视频教程

以上就是PHP后端接口怎么写的详细内容,更多请关注Gxl网其它相关文章!

内容总结

以上是为您收集整理的PHP后端接口怎么写全部内容,希望文章能够帮你解决PHP后端接口怎么写所遇到的程序开发问题。 如果觉得技术教程内容还不错,欢迎将网站推荐给程序员好友。

内容备注

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。


希望以上内容对你有所帮助!如果还有其他问题,请随时提问。 各类知识收集 拥有多年CMS企业建站经验,对 lecms, classcms, fastadmin, pbootcms, phpcms, eyoucms, yzmcms, PHP, xunruicms, jizhicms, dedecms, wordpress, hkcms, yzncms, 等各类cms的相互转化,程序开发,网站制作,bug修复,程序杀毒,插件定制都可以提供最佳解决方案。

相关推荐

扫码关注

qrcode

QQ交谈

回顶部