请帮忙,我想在joomla 2.5中使用REST api !!我搜索了很多,并在Github和techjoomla度过了许多天。我没有得到如何安装API扩展或插件并使用它... 即使我没有找到任何适当的文档来使用API。从哪里安装它.... 任何人都可以一步一步解释我如何安装API插件与适当的链接下载它们和正确的文档,以便使用它...
答案 0 :(得分:1)
您提到您正在使用Joomla 2.5(不再主动开发或支持)。如果您可以升级/迁移到Joomla 3.4.x,您的选项就会打开。
我最终为Joomla 3.4.x开发了一个RESTful API,由Slim PHP微框架提供支持。请注意,这是一个商业Joomla包,所以如果你对" free"感兴趣,那就不是了。
该套餐包括以下内容:
服务控制面板组件 Joomla"服务"附加库,其中包含一个版本的Slim v2.6.2(以及其他几个库),通过composer获取,通常位于vendor文件夹中。稍后会详细介绍...... 服务Joomla插件 服务REST插件 服务超薄配置插件 Slim JSON API View插件 Slim JSON API中间件插件 您可能会问,"所有这些插件的重点是什么?"
答案是它允许对核心组件的功能进行划分,并为易于扩展的服务路由架构打开了大门。请注意,可以轻松添加新插件,例如,Joomla ACL限制对这些新路由的访问。
服务控制面板允许基于每个用户创建令牌(甚至每个Joomla用户创建多个令牌)。它还允许最终用户配置Slim微框架参数,甚至包括API速率限制功能的阈值(当前基于每分钟请求数)。实际上,该部分非常棒,因为它提供了响应头中API速率阈值状态的实时反馈。
cAPI核心软件包(" cAPI",简称" Constant API"因为一切都需要产品名称......)就是这样 - 一个核心软件包。目前正在开发一系列附加组件,第一个是安全的LDAP JSON API(连接到Microsoft Active Directory),还有更多很酷的附加组件。
所有这一切的重点在于,基本上,您的请求已得到解答,现在商业支持的解决方案终于到来了。此外,我没有重新发明轮子,而是将扩展基于一个流行的现有微框架(Slim),使开发人员更容易在核心,可插拔的框架上工作或开发。
因此,您可以在一个易于安装的软件包中获得最好的Joomla(强大的ACL,高级插件架构,丰富的扩展)和Sim(经过验证的,符合标准的,成熟的RESTful PHP微框架)。
通过易于查询的API公开网站不应掉以轻心。我希望任何选择这样做的人都能实现100%的HTTPS访问和安全加固他们的服务器。
您可以在此处找到更多信息:http://getcapi.org
希望这能让你朝着正确的方向前进。
服务端点和CORS Ajax调用
/ api / v1 / user / - 可用于登录和退出用户并在响应中返回激活的Joomla会话 - 这也提供了多模式身份验证(通过标头中的标记或URL中的用户名和密码)串)。基本上,它符合您的需求。 - 您强制用户注销如下:/ api / v1 / user / logout / username / joomlasessionid
基本上,这是为推动远程服务或iOS或Android应用而量身定做的。
/ api / v1 / content / - 提供创建,检索和更新内容的基本功能 - 这个功能虽然存在,但我会认为它正在积极开发中,随着时间的推移会变得更加强大。
我已经嵌入了一个示例jQuery Ajax语法,后面是可以显示输出的div容器的html。请注意,标题行是可选的(取决于API的要求)。
jQuery('button').on('click', function() {
var requestUrl= "https://www.annatech.com/api/v1/slim/swagger";
var start = new Date().getTime();
jQuery.ajax({
url: requestUrl,
type: "GET",
success: function (resultData) {
totalTime = new Date().getTime() - start;
jQuery( "#title" ).empty();
jQuery( "#requestUrl" ).empty();
jQuery( "#totalTime" ).empty();
jQuery( "#output" ).empty();
jQuery( "#version" ).empty();
jQuery( "#output" ).append(resultData.info.description).html;
jQuery( "#version" ).append('Version '+resultData.info.version).html;
jQuery( "#title" ).append(resultData.info.title).html;
jQuery( "#requestUrl" ).append(requestUrl).html;
jQuery( "#totalTime" ).append(totalTime+ 'ms').html;
},
error: function (jqXHR, textStatus, errorThrown) {
alert('error');
},
timeout: 120000
});
});

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<button>Send CORS</button>
<p>Request URL: <span id="requestUrl"></span></p>
<p>Response Time: <span id="totalTime"></span></p>
<h2><span id="title"></span></h2>
<h3><span id="version"></span></h3>
<div id="output"></div>
&#13;
不用说,所有cAPI核心软件包的改进都包含在年度订阅费中。附加组件将(将)单独计费和支持。
关于文档
请注意,文档仍处于开发阶段,但如果您想直接与我联系(或通过https://www.annatech.com/annatech-llc.html),我可以向您详细介绍。另外,我建议您查看Slim微框架,以便了解基本路线设计http://docs.slimframework.com。
如果您有任何其他问题,请告诉我。