Не удается заставить spring cors работать с angular и kotlin

#angular #spring #spring-boot #spring-mvc #kotlin

#angular #весна #spring-boot #spring-mvc #kotlin

Вопрос:

Кажется, я не могу заставить cors работать с sping / kotlin и Angular 10. Я перепробовал практически все, что смог найти в Интернете. Я добавил аннотации cors к контроллеру, api и глобально, но ни один из них не работает. Есть идеи?

 @Configuration
@EnableWebMvc
class WebConfig : WebMvcConfigurationSupport() {

    override fun addCorsMappings(registry: CorsRegistry) {
        println("HHHHHHH")
        registry.addMapping("/**")
    }
}

@CrossOrigin(origins = ["http://localhost:4200"])
@RestController
class StoreController(
        private val repo: TaskRepository
) {

    @CrossOrigin
    @GetMapping("/test")
    fun testGet(): List<String> {
        val op = ChromeOptions()
        val user_agent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.116 Safari/537.36"
        op.addArguments("user-agent={$user_agent}")
        op.addArguments("headless")
        val driver = ChromeDriver(op)
        driver.get("https://www.nordstrom.com/s/creme-de-la-mer-moisturizing-cream/3057002?origin=coordinating-3057002-0-2-GIFTS_FOR_HER_1-recbot-top_hits_womens_giftsamp;recs_placement=GIFTS_FOR_HER_1amp;recs_strategy=top_hits_womens_giftsamp;recs_source=recbotamp;recs_page_type=homeamp;recs_seed=0amp;color=NO COLOR")
        var images = emptyList<String>()
        var count = AtomicInteger(0)
        while(images.isEmpty() amp;amp; count.get() < 100) {
            Thread.sleep(300)
            count.addAndGet(1)
            images = driver.findElementsByTagName("img")
                    .filter{ (it.size.width > 250 amp;amp; it.size.height > 250) }.map { it.getAttribute("src") }
        }
        return images
    }
}
  

Вот код angular

 this.http.get("http://localhost:8080/test/", { observe: 'response' }).subscribe(res => {
  console.log(res)
})
  

Ответ №1:

Оказывается, в моем gradle были библиотеки Spring security, и это не очень хорошо сочетается с аннотациями cors.