cURLロゴ


cURL

自己参照のためのPOSTリクエストの例

1.通常のPOST

1.1データなしでPOSTする。

$ curl -X POST http://localhost:8080/api/login/....

1.2データをPOSTする。

$ curl -d “username=mkyong&password=abc”

http://localhost:8080/api/login/…​

;.

1.3通常のPOSTデータを受け入れるためにRESTを実行します。

    @PostMapping("/api/login")
    public ResponseEntity<?> login(@RequestParam("username") String username,
                                    @RequestParam("password") String password) {
       //...
    }

    @PostMapping("/api/login")
    public ResponseEntity<?> login(@ModelAttribute Login login) {
       //...
    }

2. POST +マルチパート

ファイルをPOSTするには、この `-F file = @” path/to/data.txt “`を追加します。

2.1ファイルをアップロードする

$ curl -F [email protected]"path/to/data.txt" http://localhost:8080/api/upload/....

2.2余分なフィールドを含む複数のファイルをアップロードする:

$ curl -F extraField=”abc” -F [email protected]”path/to/data.txt” -F [email protected]”path/to/data2.txt”

http://localhost:8080/api/upload/multi/…​

;.

2.3 POSTのマルチパートデータを受け入れるためのRESTを実行します。

    @PostMapping("/api/upload")
    public ResponseEntity<?> uploadFile(
            @RequestParam("file") MultipartFile uploadfile) {
       //...
    }

    @PostMapping("/api/upload/multi")
    public ResponseEntity<?> uploadFiles(
            @RequestParam("extraField") String extraField,
            @RequestParam("files") MultipartFile[]uploadfiles) {
       //...
    }

    @PostMapping("/api/upload/multi2")
    public ResponseEntity<?> uploadFiles2(
            @ModelAttribute UploadModel model) {
       //...
    }

3. POST + JSON

JSONデータをPOSTするには、この

-H" Content-Typeを追加してください:application/json "

3.1 Windowsでは、二重引用符をエスケープする

c:\> curl -H "Content-Type: application/json" -X POST -d {\"username\":\"mkyong\",\"password\":\"abc\"} http://localhost:8080/api/login/....

3.2 **  nixまたはMac OSXの場合は、一重引用符

$ curl -H “Content-Type: application/json” -X POST -d ‘{“username”:”mkyong”,”password”:”abc”}’

http://localhost:8080/api/login/…​

;.

3.3 Spring JSONデータを受け入れるためのREST。

    @PostMapping("/api/login")
    public ResponseEntity<?> login(@RequestBody Login login) {
       //..
    }

参考文献

春と]。リンク://spring/curl-post-json-data-to-spring-rest/[cURL – Post JSON

データをSpring RESTに送信]。リンク://spring-boot/spring-boot-file-upload-example-ajax-and-rest/[Spring

ブートファイルのアップロード例 – AjaxとREST]