>我正在尝试提出此请求
fopen("http://192.168.0.116:9090/sendsms?phone=4456666&text=url#&password=","r");
从我的Android设备发送短信,但我似乎无法成功发送消息,我怀疑#
使事情复杂化。
url 中的#
必须作为消息本身的一部分保留在那里。
phone
是电话号码,text
是短信。
如何使获取请求工作?
是的,#
字符表示 URL 中的一个片段,因此现在实际上忽略了之后的部分。您需要正确转义它,例如:
$myUrl = 'http://192.168.0.116:9090/sendsms?'.http_build_query([
'phone' => '4456666',
'text' => 'url#',
'password' => '',
]);
文档在这里关于"http_build_query"。
您还可以使用 urlencode
正确转义各个值。
这应该有效
fopen("http://192.168.0.116:9090/sendsms?phone=4456666&text=url%23&password=","r");
正如#
%23