我尝试用请求做一个请求这是URL:(将变量与URL的其余部分连接起来)
vars.BaseURLOData ++ " " ++ "eq" ++ " 'x1543b14-6f7f-4dc0-a6ga-d0574e9c80ae'" as String
vars.BaseURLOData = http://31.192.103.112:8082//apisserver/api.src/ER_EasyApple_tbl?$filter=ER_application_id
完整URL(已经连接的)应该是:
http://31.192.103.112:8082//apiserver/api.src/ER_EasyApple_tbl?$filter=ER_application_id eq 'x1543b14-6f7f-4dc0-a6ga-d0574e9c80ae'
但它说以下错误:
Illegal character in query at index 88:
http://31.192.103.112:8082//apiserver/api.src/EA_EasyApple_tbl?$filter=EA_application_id eq 'x1543b14-6f7f-4dc0-a6ga-d0574e9c80ae'
看起来HTTP请求连接器不喜欢在URL中有空格。您可以尝试先使用DataWeave函数encodeURI()对其进行URL编码。
话虽如此,我真的不确定连接器是否期望URL中的查询参数。在连接器中有一个单独的部分用于查询参数。
通常的形式是这样的:
<http:request config-ref="HTTP_Request_Configuration" path="/apiserver/api.src/EA_EasyApple_tbl" method="GET" doc:name="HTTP Request">
<http:query-params>#[
{
filter : "EA_application_id eq 'x1543b14-6f7f-4dc0-a6ga-d0574e9c80ae'"
}
]</http:query-params>
协议、主机和端口在连接器的配置中定义。