Передать массив параметров тега в API Stack Exchange?

Я хочу получить самые популярные вопросы с тегами за день, используя API Stack Exchange.

Этот вызов API работает для «оракула»:

https://api.stackexchange.com/2.2/tags?inname=oracle&site=stackoverflow

Теперь я хочу передать массив параметров этому API за один вызов.

Я хочу получить количество вопросов, размещенных на тег.

Могу ли я передать массив тегов в API?


person Srini Sydney    schedule 10.04.2018    source источник
comment
Массив каких параметров, для какой цели? Некоторые маршруты API допускают массивы, некоторые — нет. Что еще более важно, забудьте о том, как; каков желаемый конечный результат?   -  person Brock Adams    schedule 12.04.2018
comment
Я хочу получить количество вопросов, размещенных на тег. Если параметр представляет собой массив, я могу передать все теги за один вызов. Надеюсь, это ясно   -  person Srini Sydney    schedule 12.04.2018


Ответы (1)


Вопрос не ясен. Многие маршруты API допускают массивы для ввода, где это имеет смысл и не слишком «дорого».

обычный /tags маршрут не принимает массивы в своем основном параметре (inname), поскольку inname выполняет поиск по подстановочным знакам и смешивает два были бы слишком «дорогостоящими» на стороне сервера.

Но вы можете отправить массив тегов на маршрут /tags/{tags}/info.

Например, чтобы получить количество вопросов для тегов oracle, mysql и sql-server, вы можете вызвать:

/2.2/tags/ oracle;mysql;sql-server/info?site=stackoverflow&filter=!bNKX0pggz90UuM

который возвращает:

{
  "count": 514139,
  "name": "mysql"
}, {
  "count": 229607,
  "name": "sql-server"
}, {
  "count": 96037,
  "name": "oracle"
}

Важно:

  1. Почти все параметры массива для API разделены точкой с запятой (;)
  2. Хотя вы должны иметь возможность передавать до 100 тегов за раз, -tags">в настоящее время существует ошибка, которая ограничивает это. В целях безопасности не передавайте больше 45 тегов за раз.
person Brock Adams    schedule 13.04.2018
comment
Не понимаю у меня баг с поиском более 45 тегов в звонилке!! Может я что-то упускаю - person Srini Sydney; 18.04.2018
comment
Уточните, что непонятно. API не работает должным образом. Пока не исправят, если параметр tags превышает 909 символов , произойдет сбой экземпляра API вместо того, чтобы правильно ответить на ваш запрос. Чтобы избежать этого, я предложил не запрашивать больше 45 тегов за раз. Это число является чем-то вроде SWAG для удобства/простоты реализации. Это действительно общая длина параметра, которая вызывает ошибку. - person Brock Adams; 18.04.2018