You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

无法通过Curl向Android端Tasker传递参数求助

解决Tasker接收HTTP GET参数失败的问题

核心问题:Tasker HTTP Server的参数映射逻辑

Tasker的HTTP服务对GET参数的处理不是直接按参数名绑定变量,而是有自己的规则,这就是你看到%Number、%Par1这类占位符的原因。

具体解决步骤

1. 用Tasker预设参数变量直接获取

Tasker会把GET请求的参数按顺序存入%Par1、%Par2...系列变量。比如你的请求http://192.168.1.10:8080?Number=+1234567890,单个参数会直接存在%Par1里,在Tasker任务里调用%Par1就能拿到号码值。

2. 手动解析URL提取指定参数(保留参数名)

如果想通过Number这个参数名提取值,需要两步操作:

  • 先添加「变量设置」动作,把Tasker自动保存的完整请求内容%http_data赋值给临时变量%full_url
  • 再添加「变量搜索替换」动作,用正则表达式Number=([^&]+)匹配,将结果存入%target_number,这样就能精准拿到+1234567890

3. 处理特殊字符编码

你的参数里有+号,curl会自动把它解析为空格(URL编码规则),导致Tasker拿到错误值。有两种解决方式:

  • 在curl请求里手动编码+为%2B,请求改为:
    curl -X GET http://192.168.1.10:8080?Number=%2B1234567890
    
  • 在Tasker里添加「变量搜索替换」,把%Par1里的空格替换回+

4. 检查HTTP Server配置

  • 确认Tasker的HTTP服务已开启,端口设为8080
  • 触发任务的「HTTP Server」配置中,勾选「接受GET请求」
  • 不要随意加URL路径层级(比如/callnumber),除非你在Tasker里设置了对应路径匹配,否则会干扰参数解析

快速验证

在Tasker任务里加一个「闪屏」动作,把%Par1或提取后的%target_number作为显示内容,发送请求后看闪屏是否显示正确号码,就能确认参数是否提取成功。

内容的提问来源于stack exchange,提问作者meeee

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.16 08:29:59