ballerina - 资源方法调用中路径参数未解析

标签 ballerina

我为客户端定义了一个资源方法,如下所示。

isolated resource function get test/[string name]() returns string {
    return string `Hello ${name}`;
}

我从服务中调用这个方法。

isolated resource function get test/[string str]() returns string {
    return clientObj->/test/str();
}

当我像 localhost:9090/test/John 这样调用此资源时 - 我希望输出为“Hello John”。但实际输出是“Hello str”。路径参数str似乎没有解析。这是预期的行为还是有办法解决这个问题?

最佳答案

这是预期的行为,因为您已直接添加 str 作为资源路径段。默认情况下,资源路径段会转换为字符串。所以这条路径被认为是target/str。如果您想给出变量 str 的值,那么您必须使用计算的资源访问路径段来调用它,即用方括号括起来:

resource function get test/[string str]() returns string {
   // The brackets () at the end is optional if you don't have any other parameters
   return clientObj->/test/[str];
}

https://ballerina.io/learn/by-example/http-client-path-parameter/

https://ballerina.io/learn/by-example/client-class/

关于ballerina - 资源方法调用中路径参数未解析,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/77256243/

相关文章:

http - ballerina:将参数传递给客户端请求

wso2 - 如何在 Ballerina 中获取变量的类型?

websocket - 如何在 WebSocket 中代理到多个服务器

Ballerina 中的正则表达式模式搜索

arrays - Ballerina 将元素附加到数组的末尾

wso2 - 如何将 JWT 与 Ballerina 一起使用

string - 使用 url :encode() method in Ballerina lang 对 url 中的空格进行编码

ballerina - 芭蕾舞女 Actor 是否支持排序?

ballerina - 一个简单程序的构建大小

Ballerina vscode 插件警告 Ballerina 主页设置无效。 Windows 10 PC 的正确设置是什么?