headers.add(HttpHeaders.AUTHORIZATION, auth_token );
headers.add(HttpHeaders.ACCEPT, MediaType.APPLICATION_JSON_VALUE );
headers.add(HttpHeaders.CONTENT_TYPE, MediaType.APPLICATION_JSON_VALUE );

RestTemplate restTemplate = new RestTemplate();
MemberUser member_user = new MemberUser(member.getId(), member.getNickname(), "");
HttpEntity<MemberUser> req = new HttpEntity<>(member_user, headers);

ResponseEntity<String> response = restTemplate.exchange(url + "/user/create", HttpMethod.POST, req, String.class);
System.out.println("api user create");
System.out.println(response);

occurred 403 forbidden error

org.springframework.web.client.HttpClientErrorException: 403 Forbidden
at org.springframework.web.client.DefaultResponseErrorHandler.handleError(DefaultResponseErrorHandler.java:63)
at org.springframework.web.client.RestTemplate.handleResponse(RestTemplate.java:700)
at org.springframework.web.client.RestTemplate.doExecute(RestTemplate.java:653)
at org.springframework.web.client.RestTemplate.execute(RestTemplate.java:613)
at org.springframework.web.client.RestTemplate.getForObject(RestTemplate.java:287)
at com.brawlstone.metaservice.service.SyncService.get(SyncService.java:49)
at com.brawlstone.metaservice.web.SyncController.getCards(SyncController.java:30)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)

Solution

headers.add("user-agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.99 Safari/537.36");

Try to add a “User-Agent” header to your request.

--

--