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

如何在PowerApps模型驱动应用中通过URL传递参数?

模型驱动应用中通过URL传递参数的实现方法

一、直接构造应用URL传递参数

模型驱动应用的URL支持通过extraqs参数传递自定义键值对,核心结构如下:

https://<你的环境域名>/main.aspx?appid=<目标应用ID>&pagetype=entityrecord&etn=<实体逻辑名>&id=<记录ID>&extraqs=param1=value1%26param2=value2
  • 其中extraqs后的内容需做URL编码(比如&要转成%26)
  • 若要打开视图而非单条记录,可将pagetype设为entitylist,并指定viewid参数

在表单中获取参数的方式:使用JavaScript调用全局上下文API

// 获取所有URL参数
const queryParams = Xrm.Utility.getGlobalContext().getQueryStringParameters();
// 读取指定参数
const paramValue = queryParams.param1;

二、通过客户端API跳转并传参

如果是在模型驱动应用内部跳转(比如自定义按钮、脚本触发),推荐用Xrm.Navigation.openForm方法,直接在配置中传入参数:

Xrm.Navigation.openForm({
    entityName: "account",
    entityId: "55555555-5555-5555-5555-555555555555",
    extraQueryParameters: "param1=test&param2=123"
}).then(
    function (success) { console.log(success); },
    function (error) { console.log(error); }
);

这种方式无需手动编码URL,API会自动处理参数格式。

三、自定义页面(嵌入画布应用)接收参数

如果是在模型驱动应用中嵌入的自定义页面(画布应用),可以直接用Power Apps的Param()函数读取URL参数:

// 获取名为"param1"的参数值
Param("param1")

传递参数时,只需在打开自定义页面的URL中追加?param1=value1即可,或者通过Xrm.Navigation.navigateTo方法的data属性传递更复杂的参数结构。

注意事项

  • 所有参数值需符合URL规范,特殊字符必须编码(比如空格用%20,中文用UTF-8编码)
  • 若参数用于业务逻辑,需在前端脚本或后端插件中做合法性校验,避免注入风险
  • 测试时可通过浏览器开发者工具的"网络"面板查看请求URL,确认参数是否正确传递

内容的提问来源于stack exchange,提问作者Jaqen H'ghar

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.16 15:15:03