2016-11-23 8 views
0

私はJava restassuredライブラリを使用してパラメータを投稿するにはどうすればよいですか?

https://10.40.0.20:8443/randomText/randomText/randomText?registrationInfo=%7B%22publicIpAddress%22%20%3A%20%22193.168.0.1%22%2C%20%22networkIpAddress%22%20%3A%20%22192.168.0.1%22%2C%20%22numberOfPartitions%22%20%3A%202%2C%20%22softwareVersion%22%20%3A%20%22v123%22%2C%20%22publicSshKey%22%20%3A%20%22ssh-key%22%2C%20%22macAddress%22%20%3A%20%2226%3A18%3A31%3Abf%3A19%3Aea%22%20%7D

私は、Javaのためのrestassuredライブラリを使用していることをどのように行うのですかのように、クエリのparamsを使用してPOSTリクエストを送信したいですか?

given().contentType(ContentType.JSON) 
       .header("accept", "application/json") 
       .header("Content-Type", "application/application.json") 
       .parameters("publicIpAddress", "194.168.0.1", "networkIpAddress", 
         "192.168.0.1", "numberPartitions", 
         1, "softwareVersion", "v123", 
         "publicSshKey", "ssh-key", "macAddress", 
         "1a:57:39:96:30:10") 
       .log().method() 
       .log().path() 
       .expect() 
       .statusCode(201) 
       .when() 
       .post("/uri/") 
       .then() 
       .log().status() 
       .log().body(); 

これは私が今までに書いたものですが、動作しません。それは私に400の不正な構文の応答コードを送ります。

私はまた、次のように使用してきましたが、私のために動作しませんでした:

given().contentType(ContentType.JSON) 
       .queryParam("publicIpAddress", "194.168.0.1") 
       .queryParam("commsIpAddress", "192.168.0.1") 
       .queryParam("numberOfActivePartitions", 1) 
       .queryParam("testAgentSoftwareVersion", "v123") 
       .queryParam("publicSshKey", "ssh-key") 
       .queryParam("commsMac", "1a:57:39:96:30:10") 
       .header("accept", "application/vnd.cobham.v1+json") 
       .log().method() 
       .log().path() 
       .expect() 
       .statusCode(201) 
       .when() 
       .post("/controllers/") 
       .then() 
       .log().status() 
       .log().body(); 

答えて

0

あなたはqueryParamを使用する必要があります。

given().queryParam("name, "value") 
       .body(..) 
       .when() 
       .post(..); 
関連する問題