API Explorer позволяет указать параметр запроса fields
(в разделе «Показать стандартные параметры»), чтобы указать, какие поля следует включить в частичный ответ.В частности, мне интересно получить частичный ответ spellCorrection
, используя пример кода , предоставленный .
Мой вопрос относится к более широкой проблеме, заключающейся в том, что пример клиентского кода, кажется, не поддерживает извлечение частичных ответов, как это делает проводник API, но я буду использовать spellingCorrection
в примерах ниже:
// Doesn't work #1: passing "fields: spellCorrection" as a second argument
var request = {
// Required fields, values omitted for brevity
parent: "...",
requestMetadata: {...}
// The field I care about
jobQuery: {
query: "engimeer" // incorrect spelling 'm'
}
}
client.searchJob(request, { fields: "spellCorrection" })
// Doesn't work #2: passing "spellCorrection: true" as a second argument
client.searchJob(request, { spellCorrection: true })
// Doesn't work #3: passing "fields: spellCorrection" within the request
var request = {
...
fields: {
spellCorrection: true
}
}
client.searchJob(request)
// Doesn't work #4: passing "spellCorrection: true" within the request
var request = {
...
spellCorrection: true
}
client.searchJob(request)
Все вышеперечисленные варианты, похоже, не работают.
Глядя на реализацию searchJobs
в job_service_client.js
, неясно, как я могу передать spellingCorrection
в качестве параметра.
В качестве альтернативы, есть ли простой способ изменить job_service_client.js
, чтобы он возвращал частичный ответ spellingCorrection
, или мне не повезло?
Примечание: яВозвращая правильный ответ с совпадающими заданиями в виде массива (почему, Google?):
[
[{<matching_job_1>},{<matching_job_2>}...],
null,
null
]
в отличие от API Explorer, я получаю json (желаемый вывод):
{
"matchingJobs:": [{<matching_job_1>},{<matching_job_2>}...]
"spellCorrection": {
"corrected": true,
"correctedText": "engineer" // returns correct spelling
}
}