В запросе отсутствует токен - PullRequest
0 голосов
/ 07 марта 2019

Здесь я пытаюсь отправить сгенерированный токен из заголовка в API вместе с данными, но получаю сообщение об ошибке:

В запросе отсутствует токен

Не уверен, что не так с моим кодом, может кто-нибудь, пожалуйста, помогите мне решить эту проблему, заранее спасибо.

String url = "API_TO_GENERATE_TOKEN"; 
                HttpHeaders httpHeaders = new HttpHeaders();
                httpHeaders.set("Content-Type", "application/json");
                httpHeaders.set("CLIENT_ID", "VALUE_OF_CLIENTID");
                httpHeaders.set("CLIENT_SECRET", "VALUE_OF_CLIENT_SECRET");
                JSONObject json = new JSONObject();
                HttpEntity <String> httpEntity = new HttpEntity <String> (json.toString(), httpHeaders);
                RestTemplate restTemplate = new RestTemplate();
                String response = restTemplate.postForObject(url, httpEntity, String.class);
                JSONObject jsonObj = new JSONObject(response);
                System.out.println("Json Obj is:"+jsonObj);
                /*String balance = jsonObj.get("data").toString();
                System.out.println("Response is:"+response);*/
                JSONObject jsonObj1 = jsonObj.getJSONObject("data");
                String token = jsonObj1.getString("token");
                System.out.println("Token is " + token);        

                String url1=API_TO_ADD_USER";
                HttpHeaders httpHeaders1=new HttpHeaders();
                httpHeaders1.set("CLIENT_ID", "VALUE_OF_CLIENT_ID");
                httpHeaders1.set("CLIENT_SECRET", "VALUE_OF_CLIENT_SECRET");
                httpHeaders1.set("Content-Type","application/json");
                httpHeaders1.set("Authorization","Bearer"+token);

//              JSONObject json1 = new JSONObject();

                Filter u= new Filter();


                u.setName("my_name");
                u.setPhone("123456789");
                u.setVendorId("P1234");
                u.setAddress1("my_address1");
                u.setAddress2("my_address2");
                u.setCity("my_city");
                u.setState("my_state");
                u.setEmail("myemail@abc.com");

                HttpEntity<Filter> httpEntity1 = new HttpEntity<>(u, httpHeaders1);
                RestTemplate restTemplate1 = new RestTemplate();
                //String response1 = restTemplate1.postForObject(url1, httpEntity1, String.class);

                ResponseEntity<String> response1 = restTemplate.postForEntity(url1, httpEntity1, String.class);

//              JSONObject jsonObj2 = new JSONObject(response1);
                System.out.println("Json Obj111 is:"+response1);

1 Ответ

0 голосов
/ 07 марта 2019

Я столкнулся с аналогичной проблемой при использовании RestClient, не разделяя "Bearer" и Token пробелом, поэтому я бы пошел httpHeaders1.set("Authorization","Bearer "+token), и у вас все будет в порядке.

...