禅道扩展
37102

免密登陆会显示api.php的代码已解决 悬赏5积分

提问者李明 答案数1 阅读数1008 发表时间2020-04-08 05:05:29

/api.php?m=user&f=apilogin&account=account&code=test&time=timestamp&token=token

已在后台配置免密登陆的情况下,尝试在第三方应用中通过拼接的链接登陆禅道,但发送此GET请求后返回的是api.php的全文:

<?php
/**
 * The api router file of ZenTaoPMS.
 *
 * All request of entries should be routed by this router.
 *
 * @copyright   Copyright 2009-2017 青岛易软天创网络科技有限公司(QingDao Nature Easy Soft Network Technology Co,LTD, www.cnezsoft.com)
 * @license     ZPL (http://zpl.pub/page/zplv12.html)
 * @author      Gang Liu <liugang@cnezsoft.com>
 * @package     ZenTaoPMS
 * @version     $Id: index.php 5036 2013-07-06 05:26:44Z wyd621@gmail.com $
 * @link        http://www.zentao.net
 */
/* Set the error reporting. */
error_reporting(0);
define('RUN_MODE', 'api');
/* Start output buffer. */
ob_start();

/* Load the framework. */
include '../framework/router.class.php';
include '../framework/control.class.php';
include '../framework/model.class.php';
include '../framework/helper.class.php';

/* Log the time and define the run mode. */
$startTime = getTime();

/* Instance the app. */
$app = router::createApp('pms', dirname(dirname(__FILE__)), 'router');

/* Run the app. */
$common = $app->loadCommon();

/* Check entry. */
$common->checkEntry();

/* Set default params. */
$config->requestType   = 'GET';
$config->default->view = 'json';

$app->parseRequest();
$common->checkPriv();
$app->loadModule();

$output = json_decode(ob_get_clean());
$data   = new stdClass();
$data->status = isset($output->status) ? $output->status : $output->result;
if(isset($output->message)) $data->message = $output->message;
if(isset($output->data))    $data->data    = json_decode($output->data);
$output = json_encode($data);

unset($_SESSION['ENTRY_CODE']);
unset($_SESSION['VALID_ENTRY']);

/* Flush the buffer. */
echo helper::removeUTF8Bom($output);


禅道版本:11.6.4

安装包类型:源码包

操作系统:

客户端浏览器:Chrome

设置备注
内容
答案列表
🚢
2020/04/08 最佳答案

你好


这个问题的原因应该是php没有解析


您可以再确认下安装方式,是通过一键安装包安装的?还是通过源码包安装的?


因为之前的windows一安装包apache配置中,php解析没有将api.php文件配置上。


如果是windows一键安装包,您可以看下xampp/runner/res/apache/conf/httpd.conf文件


zentao配置下面增加


<Files "api.php">


  SetHandler application/x-httpd-php


</Files>


然后停止禅道服务,关闭集成面板,重新打开启动禅道,再看下结果


如果是源码安装的,您可以检查下php解析是否正常,webserver是否做过什么特殊配置。


另外,第三方应用应该是以post方式传递给user-login方法


您也可以添加页面上方QQ,邀请进群后,截图问题咨询一下的。


联系我们
联系人
杨苗/高级客户经理
电话(微信)
13165050229
QQ号码
2692096539
联系邮箱
yangmiao@chandao.com
返回顶部
杨苗
高级客户经理
13165050229
2692096539
统一服务热线 4006-8899-23
我要提问提问有任何问题,您都可以在这里提问。 问题反馈反馈点击这里,让我们聆听您的建议与反馈。