Как устранить ошибку CORS для Rest API, когда моя цель динамическая - PullRequest
0 голосов
/ 08 мая 2019

Я пытаюсь создать симулятор Rest Response (например, почтальон) с использованием угловых и узлов js. Всякий раз, когда я пытался отправить запрос, он выдает мне ошибку CORS (перекрестное совместное использование ресурсов). Я обнаружил, что использование proxy.config решает эту проблему, когда мы указываем хост в target. Но в моем случае URL-адреса являются динамическими. Я не могу определить все цели в файле proxy.config. Как я могу решить эту проблему?

1 Ответ

0 голосов
/ 08 мая 2019

Добавьте следующий код в ваш серверный скрипт

app.all("/api/*", function (req, res, next) {
    res.header("Access-Control-Allow-Origin", "*");
    res.header("Access-Control-Allow-Headers", "Cache-Control, Pragma, Origin, Authorization,   Content-Type, X-Requested-With");
    res.header("Access-Control-Allow-Methods", "GET, PUT, POST");
    return next();
});

Если вы используете angular с springboot, просто добавьте следующую строку перед определением контроллера

@CrossOrigin(origins="http://localhost:4200",allowedHeaders="*")

Например:

@RestController
@CrossOrigin(origins="http://localhost:4200",allowedHeaders="*")
public class AccountController {

    @Autowired
    private AccountServiceImpl accountService;

    @RequestMapping("/hello")
    public String startPage(){
        return "Hi";
    }
}

Это решит проблему.

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