私はSpringブートv1.5.1を使用していますが、CORSの原点に対する私の制限が機能していないようです。CORSの許可されたオリジン制限がSpringブートアプリケーションで動作しない
私のapplication.propertiesファイルには、次の行があります(ref1ref2)。
私のRESTコントローラは次のようになります。私はhttp://localhost:8080/api/car
にブラウザと種類を開くとき
@RestController
@CrossOrigin
@RequestMapping("/api/car")
public class CarCtrl {
@Autowired
private CarService carService;
@GetMapping
public Car get() {
return carService.getLatest();
}
}
はしかし、私はまだRESTエンドポイントにアクセスできるようにしています。
また、次のように注釈を変更しようとしましたが、これは機能しません。
@CrossOrigin("${endpoints.cors.allowed-origins}")
私が間違っていることについてのアイデアはありますか?
WebMvcConfigurerAdapter
のように、postを使用していないことに注意してください。明示的に原点をコントロールするために、このクラスを拡張する必要が本当にありますか?私は、プロパティファイルの設定に加えて、@CrossOrigin
注釈は、(プログラム的に行う必要はなく)許可された起点を制御できると考えました。
ajaxリクエストを実行するときにCorsが適用されます。ブラウザがAPIのURLに直接アクセスするのを妨げるものではありません。 'WebMvcConfigurerAdapter'は、グローバルCorsポリシーを適用する場合に使用され、' @ CrossOrigin'は単一のリソースに対して十分でなければなりません。なぜそれは動作しないと思いますか?どのようにチェックしましたか? –