2016-01-25 5 views
0

Ссылка на тест API не работает в моей программе.API-интерфейс API-интерфейса Paypal не смог открыть защищенный канал

Пожалуйста, проверьте следующий снимок экрана.

enter image description here

Когда я печатаю, то URL Test API (https://api-3t.sandbox.paypal.com/nvp) значение в адресной строке браузера, то возвращаемое значение FAILURE и сообщение об ошибке, но я знаю, почему это было так случиться, что я не передать верительные значения и другие обязательные поля.

Согласно этой логике, когда я отлаживаю ссылку (Test API Link) в моей программе без значений учетных данных, она приводит меня к этому исключению, а не возвращает FAILURE.

Итак, я пытаюсь использовать API Live (https://api-3t.paypal.com/nvp), чтобы убедиться, что мои программные ошибки или нет, но прямая ссылка API дает мне результат FAILURE.

И тестовая ссылка все еще работала в этой программе последние два дня назад.

Я использую .Net Framework 4.5.

Пожалуйста, расскажите мне все возможные причины, по которым я получал эту ошибку.

Благодарим за любые предложения.

ответ

0

Песочница PayPal перешла на протокол TLS 1.2. Однако после добавления «System.Net.ServicePointManager.SecurityProtocol = System.Net.SecurityProtocolType.Tls12;» перед вашим вызовом это должно решить проблему TLS 1.2.

+0

благодарю вас Martien, когда я сообщить PAYPAL они отвечают так же, как вы говорите, и теперь он работает :) – Thet

0

Когда я сообщаю в Paypal о проблеме как о том же сообщении здесь, они отвечают, что sanbox обновлен до TLS1.2 и HTTP 1.1. Для asp.net используйте «System.Net.ServicePointManager.SecurityProtocol = System.Net.SecurityProtocolType.Tls12», и проект должен запускаться на .Net Framework 4.5. Если бы это было под 4.5 мы не можем назвать Tls12

ссылка ссылка здесь

https://www.paypal-knowledge.com/infocenter/index?page=content&widgetview=true&id=FAQ1914&viewlocale=en_US

1

Это потому, что конечные точки теперь обновляются использовать TLS1.2, поэтому вы должны использовать SecurityProtocolType. Tls12 перед вызовом NVPAPICaller. т.е.

System.Net.ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12; 
NVPAPICaller PPCaller = new NVPAPICaller(); 

....

подробнее о новинках и TLS: https://www.paypal-knowledge.com/infocenter/index?page=content&id=FAQ1914&expand=true&locale=en_US