Создание ссылки веб-службы в Visual Studio на API SOAP PayPal

#web-services #wcf #soap #paypal

#веб-службы #wcf #soap #paypal

Вопрос:

Я пытаюсь обновить существующую систему, чтобы использовать ссылку на веб-службу WCF для своих прокси-классов API SOAP PayPal.

Согласно документации этого API, правильный URL-адрес WSDL выглядит следующим образом:

https://www.paypal.com/wsdl/PayPalSvc.wsdl

Я попытался использовать диалоговое окно добавления ссылки на службу в Visual Studio, а также команду svcutil. Это может быть воспроизведено (для меня) в новом проекте консольного приложения или в любом проекте. Во всех случаях я получаю следующие ошибки.

Произошла ошибка загрузки ‘https://www.paypal.com/wsdl/PayPalSvc.wsdl/_vti_bin/ListData.svc /$метаданные’. Запрос не выполнен со статусом HTTP 404: не найден. Метаданные содержат ссылку, которая не может быть разрешена: ‘https://www.paypal.com/wsdl/PayPalSvc.wsdl «. Тип содержимого text / plain ответного сообщения не соответствует типу содержимого привязки (application / soap xml; charset= utf-8). При использовании пользовательского кодировщика убедитесь, что метод IsContentTypeSupported реализован правильно. Первые 1024 байта ответа были:

 <?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions
    ns:version="204.0"
    xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
(removed the rest of the beginning of the wsdl file)
  

Я не понимаю, почему существуют неразрешенные ссылки или почему несоответствие типа контента может привести к сбою процесса.

Любые идеи или даже обмен вашими результатами воспроизведения были бы полезны.

Ответ №1:

Существует 3 XSD, на которые ссылается WSDL, которые доступны по следующим URL-адресам-

Загрузите WSDL и 3 xsd в локальную папку на вашем компьютере и добавьте ссылку на эту локальную копию WSDL. Это должно работать

Комментарии:

1. Работает как шарм, спасибо. Теперь мне нужно решить остальные 6 проблем, с которыми сталкивается API SOAP PayPal 🙂