webman 为何在centos 使用 wget或者curl 访问 却获取不到$_GET请求参数呢,用PHP中的 curl或者file之类的访问都不行。
同样的URL 直接使用浏览器访问就可以正常获取
研究一晚上了,请各位帮忙看看是不是也有这种情况。
下面的代码很明显,只打印了第一个参数,也只获取到了第一个。
curl http://127.0.0.1:8000/api/index?ddfads=32432&fdsfds=43254324&fhewfhew=345324324hh4hj32j32h4j32h4j32h4h32hr3jhfd&dsfjdsjfjdssfjdskfk=34333
[1] 1441075
[2] 1441076
[3] 1441077
[root@server yunpolice]# test{"ddfads":"32432"}
[1] 已完成 curl http://127.0.0.1:8000/api/index?ddfads=32432
[2]- 已完成 fdsfds=43254324
[3]+ 已完成 fhewfhew=345324324hh4hj32j32h4j32h4j32h4h32hr3jhfd
<?php
namespace app\controller;
use support\Request;
use support\Db;
use support\TtsVoiceSender;
use support\singleCallByTts;
use support\yuncall;
class ApiController
{
public function index(Request $request)
{
static $readme;
if (!$readme) {
$readme = "test".json_encode($request->get());
}
return $readme;
}
}
最新版本webman php8.2以上
配置是保持默认的,没有设置任何路由
完全参考
https://www.workerman.net/doc/webman/request.html
基础请求写的,没有增加任何其他的设置
就是打算做一个API服务而已/
没有升级webman 之前是可以的,用了新版本后就不行,关键是,老版本代码一时间忘记备份了。真是。。。
试试
curl http://127.0.0.1:8000/api/index?ddfads=32432\&fdsfds=43254324\&fhewfhew=345324324hh4hj32j32h4j32h4j32h4h32hr3jhfd\&dsfjdsjfjdssfjdskfk=34333
命令行中包含
&
会被解释为命令的分隔符。你需要用引号将整个 URL 包裹起来,或者转义&
符号。可以尝试以下方法:
使用引号
转义
&
这样可以确保所有参数被正确传递到服务器。
问下AI就知道了 https://www.workerman.net/ai
对滴