2016-09-27 1 views
0

Я попытался интегрировать шлюз платежной системы в мое приложение.Нет заголовка «Access-Control-Allow-Origin» присутствует на запрошенном ресурсе. Следовательно, Origin 'xxx' не допускается.

Просто я звоню в java webservice, используя метод angularjs get.

Ниже angularjs HTTP GET метод кода

$http({ 
      method : 'GET', 
      url : 'http://localhost:8080/xxxx/redirect' 
     }).then(function successCallback(response) { 
      console.info("success"); 
     }); 

сторона код Java попытался

IS-
@RequestMapping(value = "/redirect", method = RequestMethod.GET, headers = "Accept=application/json") 
    public ModelAndView method(Payment pPayment) { 
    String amount=pPayment.getAmount(); 
    String url="https://www.sandbox.paypal.com/cgi-bin/webscr?cmd=_xclick&[email protected]&first_name=smartCity&city=Madurai&state=Tamilnadu&item_name=shirt&amount=10&night_phone_a=9513335437&item_name=shirt&[email protected]&[email protected]&quantity=1&currency=USD"; 
      return new ModelAndView("redirect:" + url); 

    } 

Я зову Paypal тест URL счета только от стороны сервера Java, но до сих пор я получаю ниже ошибки

XMLHttpRequest cannot load https://www.sandbox.paypal.com/cgi-bin/webscr?cmd=_xclick&business=wipro-se…[email protected]&[email protected]&quantity=1&currency=USD. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost:8080' is therefore not allowed access. 

Пожалуйста, дайте мне знать, где я сделал неправильно ..

+0

это ошибка CORS, вероятно, вам нужно изменить на стороне сервера, чтобы включить заголовок ответа. См. Блок-схему [здесь] (https://en.wikipedia.org/wiki/Cross-origin_resource_sharing), вероятно, это поможет вам понять CORS –

ответ

0

Вам нужно будет разрешить запросы на кросс-поиск (CORS) для ваших HTTP-запросов.

Весенние документы о том, как включить это очень хорошо. Найдите его here. Я предлагаю вам прочитать его и попробовать. Если он все еще не работает, напишите здесь.

Подробнее о CORS here.

0

Вы также должны разрешить запрос на перекрестный поиск с клиентской стороны.

попытаться запустить после установки хромированное плагин для перекрестного происхождения

https://chrome.google.com/webstore/detail/allow-control-allow-origi/nlfbmbojpeacfghkpbjhddihlkkiljbi?hl=en

это ссылка на тот, который я использую.

Кроме того, вы должны изменить заголовки, чтобы CORS как этот

Access-Control-Allow-Headers: Content-Type 
Access-Control-Allow-Methods: GET, POST, OPTIONS 
Access-Control-Allow-Origin: *