CORS Разрешить всем на одном сервере разные порты в JAVA - PullRequest
0 голосов
/ 12 октября 2018

Мой проект запущен на www.example.com: 8888 , и моему проекту требуется API , который выполняется на том же сервере в другом ПОРТЕ (www.example.com:8081).Теперь я сталкиваюсь с проблемой CORS при взаимодействии с API

Ниже приведен фрагмент кода JAVA для API:

@GET
@Path("/getFiles")
@Produces(MediaType.APPLICATION_JSON)
@Consumes(MediaType.APPLICATION_JSON)
public Response gettingJsonFiles(@QueryParam("data") String data) throws IOException {
List<org.json.JSONObject> jsonList=JsonService.gettingJsonFiles(data);
return Response.ok(jsonList.toString()).header("Access-Control-Allow-Origin", "*")
.header("Access-Control-Allow-Methods", "GET, POST, DELETE, PUT")
.header("Access-Control-Allow-Headers", "X-Requested-With")
.allow("OPTIONS").build();

}

Ответы [ 2 ]

0 голосов
/ 12 октября 2018

Пожалуйста, проверьте в ответ на запрос CORS, присутствуют ли ваши упомянутые заголовки.

Пожалуйста, попробуйте добавить заголовок ниже вместе с существующими заголовками:

"Access-Control-Allow-Credentials", "true"

Результирующий код должен быть:

@GET
@Path("/getFiles")
@Produces(MediaType.APPLICATION_JSON)
@Consumes(MediaType.APPLICATION_JSON)
public Response gettingJsonFiles(@QueryParam("data") String data) throws IOException 
{
  List<org.json.JSONObject> jsonList=JsonService.gettingJsonFiles(data);
  return Response.ok(jsonList.toString())
   .header("Access-Control-Allow-Origin", "*")
   .header("Access-Control-Allow-Methods", "GET, POST, DELETE, PUT, OPTIONS")
   .header("Access-Control-Allow-Headers", "X-Requested-With")
   .header("Access-Control-Allow-Credentials", "true")
   .build();
}

Также, если есть какие-либо пользовательские заголовки, которые вы отправляете с запросом, вы должны добавить их в "Access-Control-Allow-Headers".

0 голосов
/ 12 октября 2018

добавить строку @CrossOrigin(origins = "http://localhost:9000") для разрешения Cors

Вы также можете создать собственный фильтр - посмотрите - https://howtodoinjava.com/servlets/java-cors-filter-example/

...