前提・実現したいこと
SpringとAngularJSで作成したSPAを、一時的に他のデバイスでも閲覧できるようにしたいです。
現在、
①HTMLでIDを入力
②componentからserviceに入力されたIDを受け渡す
③serviceでSpringで指定しているURLにアクセス
④Springでデータベースを指定し、SQLを流して任意の形式で抽出
⑤抽出したデータをserviceに返し、componentに送ってHTMLで表示
といった流れで作成しています。
これまでローカルで動かしていたため、SpringのControllerでは「@RequestMapping(value = "/sampleData/data", method = RequestMethod.POST)」と言うように記述していました。
しかし、一時的ではあるのですが、今回作成しているSPAを他のデバイスでも共有する必要が出てきました。
使用しているデータベースが割と重要な内容を含んでいるため、今回は「http://ポート番号:4200/」というURLを共有したいと考えています。
そこで、Springでこれまで記述していたlocal依存のコードをボート番号に紐づく形に書き換えたいです。
ですが、Controllerにはlocalhostという指定はしておらず、localhost:8080以下のURLのみ記述しています。
この場合、どこにポート番号を指定することで、他デバイスからも閲覧できるようになるでしょうか。
localhost:8080で検索をかけたり、AutoWiredの指定を変えたりしてみたのですが、解決には至りませんでした。
「@RequestMapping(value = "http://ポート番号/sampleData/data", method = RequestMethod.POST)」としても、「The requested URL /sampleData/data was not found on this server.」と出てしまいます。
現在、「http://ポート番号:4200/」で、ページ自体は閲覧できる状態になっているので、SpringでRequestMappingのURL指定さえうまくいけばクリアできるのではないか思っています。
どうかアドバイスの程、よろしくお願いいたします。
Controller(Spring)
Java
1@RequestMapping(value = "/sampleData/data", method = RequestMethod.POST) 2 @CrossOrigin 3 public Optional<Hoge> data(Integer Id) { 4 Optional<Hoge> re = HogeDao.selectById(Id); 5 return re; 6 }
Service(Angular)
TypeScript
1@Injectable() 2export class DataService { 3 4 private dataUrl = 'http://ポート番号:4200/sampleData/data';
補足情報(FW/ツールのバージョンなど)
Mac OS
Spring
Java
AngularJS
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。