Что такое URL обратного вызова по отношению к API?

Я обыскивал сеть и, похоже, не могу понять, что такое URL-адрес обратного вызова. В моем случае у меня есть несколько URL-адресов обратного вызова, которые я должен определить сам. Популярным является "URL обратного вызова по умолчанию". Что это такое? Можете ли вы привести пример на простом английском?

8 ответов

URL обратного вызова будет вызываться методом API, который вы вызываете после того, как это будет сделано. Так что если вы позвоните

POST /api.example.com/foo?callbackURL=http://my.server.com/bar

Тогда, когда /foo закончено, отправляет запрос http://my.server.com/bar, Содержание и метод этого запроса будут разными - проверьте документацию на API, к которому вы обращаетесь.

Думайте об этом как письмо. Иногда вы получаете письмо, например, с просьбой заполнить форму, а затем возвращаете форму в конверте с указанным адресом, который находится в оригинальном конверте, в котором была форма.

После того как вы закончили заполнение формы, вы помещаете ее в предоставленный конверт и отправляете обратно.

CallbackUrl похож на этот конверт возврата. Вы в основном говорите, что я посылаю вам эти данные. Как только вы закончите с этим, я на этом callbackUrl жду вашего ответа. Таким образом, API обработает отправленные вами данные, а затем обратный вызов и отправит вам ответ.

Это полезно, потому что иногда вам могут понадобиться годы, чтобы обработать некоторые данные, и нет смысла заставлять звонящего ждать ответ. Например, скажем, ваш API позволяет пользователям отправлять на него документы и проверять их на вирусы. Затем вы отправляете отчет после. Сканирование может занять 3 минуты. Пользователь не может ждать 3 минуты. Таким образом, вы подтверждаете, что получили документ, и позволяете звонящему заниматься другими делами во время сканирования, а затем используйте callbackUrl, когда закончите, чтобы сообщить им результат сканирования.

Если вы используете URL обратного вызова, то API может подключиться к URL обратного вызова и отправить или получить некоторые данные. Это означает, что API может подключиться к вам позже (после вызова API).

пример

  1. ВЫ отправляете данные, используя запрос к API
  2. API отправляет данные, используя второй запрос к вам

Точное определение должно быть в документации API.

Это механизм для вызова API асинхронным способом. Последовательность следующая

  1. ваше приложение вызывает URL, передавая в качестве параметра URL обратного вызова
  2. API отвечает 20x http кодом (201, я думаю, но обратитесь к документации API)
  3. API работает по вашему запросу в течение определенного времени
  4. API вызывает ваше приложение, чтобы дать вам результаты, по URL-адресу обратного вызова.

Таким образом, вы можете вызвать API и сообщить своему пользователю, например, что запрос "обрабатывается" или "получен", а затем обновить статус, когда вы получите ответ от API.

Надеюсь, это имеет смысл. -Г

Я сделаю это для вас довольно просто. Когда транзакция инициируется, она проходит стадию обработки, пока не достигнет терминальной стадии. По достижении терминальной стадии статус транзакции отправляется платежным шлюзом на URL-адрес обратного вызова, который, как правило, продавцы используют в качестве ссылки для отображения страницы успеха / неудачи для пользователя. Надеюсь это поможет?

Другим вариантом использования может быть что-то вроде OAuth, он не может быть вызван непосредственно API, вместо этого URL-адрес обратного вызова будет вызываться браузером после завершения аутентификации с поставщиком удостоверений.

Обычно после того, как конечный пользователь вводит пароль для имени пользователя, поставщик услуг идентификации запускает браузер, перенаправляющий на ваш URL-адрес "обратного вызова" с временным кодом авторизации, например,

https://example.com/callback?code=AUTHORIZATION_CODE

Тогда ваше приложение может использовать этот код авторизации для запроса токена доступа у провайдера идентификации, у которого гораздо более длительный срок службы.

Вот типичный пример того, как работает обратный вызов - то, что, вероятно, испытывало большинство людей, купивших онлайн. Вы сделали покупку на своем любимом веб-сайте и нажали кнопку «Отправить». Скорее всего, вас отправят во внешнюю службу, занимающуюся обработкой платежей (например, PayPal), где вы подтвердите свой заказ, или просто подождите, пока вы увидите, как на экране мигает слово «обработка ...». После завершения транзакции вы вернетесь на исходный сайт покупок. Страница, которую вы видите, является URL-адресом обратного вызова. Хотя вы этого не знали, вы покинули сайт своего любимого интернет-магазина во время обработки, и внешний сайт, который вы посетили, вернул вас обратно. За исключением каких-либо сбоев, вы должны увидеть страницу, которую магазин хотел, чтобы вы видели после заказа. Это может быть страница с благодарностью или другая страница с информацией о подтверждении заказа, дальнейшими действиями или их домашней страницей. Он может варьироваться в зависимости от того, что вы заказывали, когда вы заказывали и как вы заказывали.

Обычно URL-адрес обратного вызова указывает внешней системе, куда двигаться дальше. То, что находится по этому URL-адресу, может быть чем угодно. Это не обязательно должен быть статический URL. Более

В рабочем процессе OAuth URL-адрес обратного вызова будет URL-адресом, на который будет перенаправлен пользователь после авторизации от провайдера OAuth. Например, «Войти через Google» приведет вас на страницу Google, а затем отправит обратно в приложение, где вы нажали кнопку «Войти через Google».

Другие вопросы по тегам