Вызов веб-сервиса через post-запрос

Добрый день.

Мной разработан конфигурационный веб-сервис
 

[ServiceContract]
   [AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Required)]
   public class ConnectorService : BaseService
   {
      [OperationContract]
      [WebInvoke(Method = "POST", RequestFormat = WebMessageFormat.Json,
            BodyStyle = WebMessageBodyStyle.Wrapped, ResponseFormat = WebMessageFormat.Json)]
      public bool CreateContact(string firstName, string middleName, string lastName)
      {
...
return true;
}
}

На страницах академии есть материалы о том как вызвать конфигурационный веб-сервис с с помощью Postman или ServiceHelper, но нет информации как его вызвать со страницы другого веб-сайта, например с использованием API XMLHttpRequest.  Функциональность и работоспособность веб-сервиса проверена с помошью Postman. Все работает.

Однако указанный метод  веб-сервиса должен вызываться со страницы стороннего сайта (доступ к которой имеется). 
Подскажите как вызвать конфигурационной веб-сервис Creatio со страницы другого веб-сайта. Желательно с примерами. 

Нравится

1 комментарий

Андрей, пример использования XMLHttpRequest для POST есть тут, но это наоборот, вызов со страниц 7.Х внешнего сервиса. В обратном направлении должно быть аналогично, но нужно учитывать необходимость авторизации при помощи AuthService и получение всех нужных кук, либо делать его доступным анонимно. Также по поводу возможных ограничений при работе с другого домена и путей их обхода см. темы: 1, 2, 3.

 

Другой вариант — работать с веб-сервисом не из браузера, а из серверного кода другого сайта. Конкретная реализация зависит от языка, на котором он написан: PHP, C#, Java, JS и др.

Показать все комментарии