api/src/Topxia/Api/Resource/Users.php
(开头部分) 2KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
<?php
namespace Topxia\Api\Resource;
use Silex\Application;
use AppBundle\Common\ArrayToolkit;
use Topxia\Service\Common\ServiceKernel;
use Symfony\Component\HttpFoundation\Request;
class Users extends BaseResource
{
public function get(Application $app, Request $request)
{
$conditions = $request->query->all();
if (empty($conditions)) {
return array();
}
// @deprecated 兼容老接口,即将去除
if (!empty($conditions['q'])) {
return $this->matchUsers($conditions['q']);
}
$start = $request->query->get('start', 0);
$limit = $request->query->get('limit', 100);
if (isset($conditions['cursor'])) {
$conditions['updatedTime_GE'] = $conditions['cursor'];
$users = $this->getUserService()->searchUsers($conditions, array('updatedTime' => 'ASC'), $start, $limit);
$next = $this->nextCursorPaging($conditions['cursor'], $start, $limit, $users);
return $this->wrap($this->filter($users), $next);
} else {
$users = $this->getUserService()->searchUsers($conditions, array('createdTime' => 'DESC'), $start, $limit);
$total = $this->getUserService()->countUsers($conditions);
return $this->wrap($this->filter($users), $total);
}
}
public function post(Application $app, Request $request)
{
$fields = $request->request->all();
if (!ArrayToolkit::requireds($fields, array('email', 'nickname', 'password'))) {
return array('message' => '缺少必填字段');
}
if (empty($fields['registeredWay']) || !in_array(strtolower($fields['registeredWay']), array('ios', 'android'))) {
$fields['registeredWay'] = $this->guessDeviceFromUserAgent($request->headers->get("user-agent"));
}
$ip = $request->getClientIp();
$fields['createdIp'] = $ip;
$authSettings = ServiceKernel::instance()->createService('System:SettingService')->get('auth', array());
if (isset($authSettings['register_protective'])) {
$type = $authSettings['register_protective'];
switch ($type) {
24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明
AI 解读 AI
登录后可用,每次 10 算力,解读结果公开显示在下面。
还没有人解读过这个文件。