Отправка API CAll с помощью API PayPal SOAP - PullRequest
5 голосов
/ 20 января 2010

Хорошо, у меня есть ссылка на сервис в моем проекте .NET. И да, я знаю, что теперь у вас есть доступ к прокси-классам.

Но в прошлом я привык делать это через объект HttpWebRequest с использованием NVP, но никогда не пытался использовать WSDL и отправлять SOAP-запрос таким образом.

Я не совсем уверен, какой объект использовать для отправки запроса. Не уверен, с чего начать. Я просмотрел документы, но не нашел хороших примеров для .NET и PayPal.

Кроме WSDL и отправки HttpWebRequest через API-интерфейс NVP и параметры строки запроса, я действительно не понимаю, есть ли разница в том, как вы отправляете запрос. Это все по Http, так что вы не можете использовать HttpWebRequest также через SOAP API (с использованием WSDL)?

1 Ответ

8 голосов
/ 20 января 2010

Вы начинаете с создания ссылки на службу из метаданных: щелкните правой кнопкой мыши по проекту -> Добавить ссылку на службу и укажите URL-адрес WSDL: https://www.sandbox.paypal.com/wsdl/PayPalSvc.wsdl

Это создаст прокси-классы для текущего проекта, которые можно использовать для отправки запросов:

using (var client = new PayPalAPIInterfaceClient())
{
    var credentials = new CustomSecurityHeaderType
    {
        Credentials = new UserIdPasswordType
        {
            Username = "username",
            Password = "password"
        }
    };
    var request = new AddressVerifyReq
    {
        AddressVerifyRequest = new AddressVerifyRequestType
        {
            Street = "some street",
            Zip = "12345"
        }
    };
    var response = client.AddressVerify(ref credentials, request);
}
...