gpt4 book ai didi

angularjs - 带有复合键参数的 ngResource 查询

转载 作者:行者123 更新时间:2023-12-03 23:19:15 27 4
gpt4 key购买 nike

我有资源,Answer ,其中有一个由 QuestionnaireId 制成的复合键和 QuestionId . ngResource代码如下:

function answerResource($resource) {
return $resource("/api/answers/:questionnaireId/:questionId",
{
questionnaireId: "@questionnaireId",
questionId: "@questionId"
}
);
}

我想使用问卷 ID 查询此资源并获取所有答案。如果我使用:
answerResource.query(
{
questionnaireId: questionnaireId
}
);

那么请求的url是:
/api/answers/123

当我希望它是:
/api/answers?questionnaireId=123

否则,我需要为查询搜索处理两条路线 - 一条在查询字符串中包含 Id,另一个将 Id 作为 url 路径的一部分。 (我也有关于可能不存在问卷 ID 的搜索文本的查询,这将使用类似 /api/answers?q=sometext 的网址)。

当然是任何 .query参数应该作为查询字符串传递,而不是作为路由的一部分。我如何获得所需的行为?

最佳答案

我能想到的最佳选择是创建一个新的 search资源上的方法,该方法在 url 中没有参数:

// normal resource definition here...
,{
search: {
method: "GET",
url: "/api/answers",
isArray: true
}
}

使用复合键值调用它会将它们作为查询字符串参数附加,而不是作为 url 的一部分,例如 /api/answers?questionnaireId=123

关于angularjs - 带有复合键参数的 ngResource 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39405452/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com