У меня есть приложение в функции 1.x, которое получает objId из строк запроса, запрашивает CosmosDb (привязка ввода), а затем выполняет оставшуюся часть работы.Тем не менее, я перевожу его в v2, и он не работает, как раньше: он запрашивает db, только если objId указан в шаблоне маршрута, но не если objId предоставляется в виде строки запроса (в v1 он работает дажеесли это предоставлено как строка запроса).Хотя моя функция .json почти такая же.Можете ли вы сказать мне, что не так, и как я могу сделать эту входную привязку для выполнения запроса SQL с помощью строки запроса?
Ниже приведено содержимое моего function.json:
{
"bindings": [
{
"authLevel": "function",
"type": "httpTrigger",
"direction": "in",
"name": "req"
},
{
"type": "http",
"direction": "out",
"name": "res"
},
{
"type": "cosmosDB",
"name": "obj",
"databaseName": "mydb",
"collectionName": "objects",
"sqlQuery": "SELECT * FROM c where c.id = {objId}",
"connectionStringSetting": "mydbstring",
"direction": "in"
}
],
"disabled": false
}
И ниже приведен мой код функции
const client = new CosmosClient({
endpoint: endpoint,
auth: {
masterKey: masterKey
}
});
module.exports = async function (context, req, obj) {
}
И ниже приведено содержимое моего proxies.json:
{
"$schema": "http://json.schemastore.org/proxies",
"proxies": {
"Set Object state Id Proxy": {
"matchCondition": {
"route": "/obj/{objId}/state",
"methods": [
"GET"
]
},
"backendUri": "http://localhost:7071/api/setobjstate?objId={objId}"
}
}
Это работает так:
http://localhost:7071/games/bbbbb
Но как я могу заставить это работать таким образом?
http://localhost:7071/games?objId=bbbbbbbbb