GET메소드에 Header값 설정 관련 에러 문의드립니다.

classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|

GET메소드에 Header값 설정 관련 에러 문의드립니다.

yu jung min
nGrinder 3.3 사용중인데요
RESTClient에서 아래와같이 세팅후 보내면 제대로 리턴이 돌아옵니다.
-----------------------------------------------------
URL: http://localhost:8080/test?id=1234
메소드: GET
헤더값: Content-Type : application/json
          UserId         :   1234
-----------------------------------------------------

ngrinder에서 아래와같이 작성해서 보냈더니
--------------------------------------------------------------------------------------------------------------
headers = [new NVPair("Content-Type", "application/json"), new NVPair("UserId", "1234")]

request.setHeaders(headers);

HTTPResponse result = request.GET("http://localhost:8080/guest?id=1234");
--------------------------------------------------------------------------------------------------------------
서버에잘 전달이 되고, 파라미터도 제대로 들어오는데 진행중에 아래와같이 에러가 나네요

에러
org.springframework.web.HttpMediaTypeNotSupportedException: Content type 'null' not supported

스크립트 작성을 잘못한건가요? ㅡㅡ;
문의드립니다.

감사합니다.


Reply | Threaded
Open this post in threaded view
|

Re: GET메소드에 Header값 설정 관련 에러 문의드립니다.

junoyoon
Administrator
다음과 같이 해보시겠어요?


HTTPResponse result = request.GET("http://localhost:8080/guest", [new NVPair("id", "1234")],  [new NVPair("Content-Type", "application/json"), new NVPair("UserId", "1234")] ); 

2016년 1월 12일 오후 1:52, yu jung min [via ngrinder] <[hidden email]>님이 작성:
nGrinder 3.3 사용중인데요
RESTClient에서 아래와같이 세팅후 보내면 제대로 리턴이 돌아옵니다.
-----------------------------------------------------
URL: http://localhost:8080/test?id=1234
메소드: GET
헤더값: Content-Type : application/json
          UserId         :   1234
-----------------------------------------------------

ngrinder에서 아래와같이 작성해서 보냈더니
--------------------------------------------------------------------------------------------------------------
headers = [new NVPair("Content-Type", "application/json"), new NVPair("UserId", "1234")]

request.setHeaders(headers);

HTTPResponse result = request.GET("http://localhost:8080/guest?id=1234");
--------------------------------------------------------------------------------------------------------------
서버에잘 전달이 되고, 파라미터도 제대로 들어오는데 진행중에 아래와같이 에러가 나네요

에러
org.springframework.web.HttpMediaTypeNotSupportedException: Content type 'null' not supported

스크립트 작성을 잘못한건가요? ㅡㅡ;
문의드립니다.

감사합니다.





If you reply to this email, your message will be added to the discussion below:
http://ngrinder.642.n7.nabble.com/GET-Header-tp1919.html
To start a new topic under ngrinder-user-kr, email [hidden email]
To unsubscribe from ngrinder-user-kr, click here.
NAML

Reply | Threaded
Open this post in threaded view
|

Re: GET메소드에 Header값 설정 관련 에러 문의드립니다.

Gisoo.Gwon
In reply to this post by yu jung min
헤더 설정을 말씀해주신대로 해주셔도 되고, 윤준호님이 말씀해주신 방법으로 해도 되요.
다만 HTTP 명세상 GET 메소드에서는 content-type이 존재하지 않습니다.
content-type이 존재한다면 POST 등의 메소드를 사용해주셔야해요.
Reply | Threaded
Open this post in threaded view
|

Re: GET메소드에 Header값 설정 관련 에러 문의드립니다.

yu jung min
In reply to this post by junoyoon
말씀해주신대로 하고 스크립트 검증하면 아래와 같은 오류가 나옵니다.
--------------------------------------------------------------------------------------------------------------------
2016-01-14 04:05:13,621 ERROR No signature of method: net.grinder.plugin.http.HTTPRequest.GET() is applicable for argument types: (java.lang.String, java.util.ArrayList, java.util.ArrayList) values: [http://192.168.21.1:8080/guest, [HTTPClient.NVPair[name=id,value=1234]], ...]
Possible solutions: GET(), GET(java.lang.String), GET(java.lang.String, [LHTTPClient.NVPair;), GET(java.lang.String, [LHTTPClient.NVPair;, [LHTTPClient.NVPair;), PUT(), GET([LHTTPClient.NVPair;)
groovy.lang.MissingMethodException: No signature of method: net.grinder.plugin.http.HTTPRequest.GET() is applicable for argument types: (java.lang.String, java.util.ArrayList, java.util.ArrayList) values: [http://192.168.21.1:8080/guest, [HTTPClient.NVPair[name=id,value=1234]], ...]
Possible solutions: GET(), GET(java.lang.String), GET(java.lang.String, [LHTTPClient.NVPair;), GET(java.lang.String, [LHTTPClient.NVPair;, [LHTTPClient.NVPair;), PUT(), GET([LHTTPClient.NVPair;)
        at org.ngrinder.TestRunner.test(test_PQA.groovy:70) ~[na:na]
        at net.grinder.scriptengine.groovy.junit.GrinderRunner.run(GrinderRunner.java:170) ~[ngrinder-groovy-3.3.jar:na]
        at net.grinder.scriptengine.groovy.GroovyScriptEngine$GroovyWorkerRunnable.run(GroovyScriptEngine.java:148) ~[ngrinder-groovy-3.3.jar:na]
        at net.grinder.engine.process.GrinderThread.run(GrinderThread.java:118) ~[grinder-core-3.9.1.jar:na]
2016-01-14 04:05:13,623 INFO  finished 1 run
2016-01-14 04:05:13,628 INFO  elapsed time is 41 ms
2016-01-14 04:05:13,628 INFO  Final statistics for this process:
--------------------------------------------------------------------------------------------------------------------

아래와같이 변수에 담아 처리하면 전송은되는데 서버측 에러는 같고요
----------------------------------------------------------------------------------------------------------------------

query    = [new NVPair("id", "1234")];
headers = [new NVPair("Content-Type", "application/json"), new NVPair("UserId", "1234")];

HTTPResponse result = request.GET("http://192.168.21.1:8080/guest", query, headers);

----------------------------------------------------------------------------------------------------------------------
에러:
org.springframework.web.HttpMediaTypeNotSupportedException: Content type 'null' not supported

^^;



Reply | Threaded
Open this post in threaded view
|

Re: GET메소드에 Header값 설정 관련 에러 문의드립니다.

yu jung min
@RequestMapping(
            value = "guest",
            method = RequestMethod.GET,
            produces = MediaType.APPLICATION_JSON_VALUE,
            consumes = MediaType.APPLICATION_JSON_VALUE)

서버측에서 consumes = MediaType.APPLICATION_JSON_VALUE 부분을 지우니 잘되는데요,

consumes = MediaType.APPLICATION_JSON_VALUE이 있을때
RESTClient3.5 에서는 500에러 없이 리턴을 받아오던데, 어떤차이가 있을까요?

흠...