Ошибка при доступе к веб-версии Java с использованием javascript (cors) - PullRequest
0 голосов
/ 15 апреля 2019

Я пытаюсь получить доступ к остальному веб-сервису в Java, используя JavaScript.Я уже сделал отдых в Интернете, и он работает без проблем. Я сейчас создаю сообщение о веб-сервисе, и когда я пытаюсь его использовать, я получаю следующую ошибку.

Access to XMLHttpRequest at 'myurl(a normal url)' from origin 'null' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource.

Я пытался использовать этот сайт https://apitester.com/ и почта работает без проблем.Мой сервер готов разрешить cors.

  @POST
    @Path("insertAng")
    @Produces(MediaType.APPLICATION_JSON)
    @Consumes("*/*")
    public Response insertAng(String ang) {
        CreateDatabase DB = new CreateDatabase();
        DB.createDB();
        Queries q = new Queries();
        Insert in = new Insert();
        Gson gson = new Gson();
        RegisterAng angData = gson.fromJson(ang, RegisterAng.class);
        System.out.println(angData.toString());
        if (q.getEmailAng(angData.getEmail())) {
            System.out.println("email ja existia email original = " + angData.getEmail());

            return Response.status(1)
                    .entity("<erro> none </erro>")
                    .header("Access-Control-Allow-Origin", "*")
                    .header("Access-Control-Allow-Methods", "PUT, GET, POST, DELETE, OPTIONS")
                    .header("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept, Authorization").build();
        }

        in.insertAng(angData.getPassword(), angData.getEmail(), angData.getNome());
        return Response.ok() //200
                .entity("<erro> none </erro>")
                .header("Access-Control-Allow-Origin", "*")
                .header("Access-Control-Allow-Methods", "PUT, GET, POST, DELETE, OPTIONS")
                .header("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept, Authorization").build();

    }

И мой код в javascript следующий:

$.ajax({
            url: 'realurl',
            dataType: 'json',
            type: 'post',
            contentType: 'application/json',
            data: JSON.stringify( {"password":"123456","email":"ANG@gmail.pt","nome":"ANG"} ),
            processData: false,
            success: function( data, textStatus, jQxhr ){
                $('#response pre').html( JSON.stringify( data ) );
            },
            error: function( jqXhr, textStatus, errorThrown ){
                console.log( errorThrown );
            }
        });

Я что-то не так делаю?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...