Text Analysis

분류별 Bhavya Gaur | 업데이트됨 9달 전 | Text Analysis

9.9 / 10

지연 시간


서비스 수준


모든 토론으로 돌아가기

"validation error, incorrect data passed to the server"

5달 전

I am making a post request to the text summarizer endpoint using HttpUrlConnection.

				URL url = new URL(apiUrl);
				HttpURLConnection client = (HttpURLConnection) url.openConnection();
				client.setRequestProperty("content-type", "application/json");
				client.setRequestProperty("x-rapidapi-host", "text-analysis12.p.rapidapi.com");
				client.setRequestProperty("x-rapidapi-key", "hidden");

				String jsonBody = "{" +
					"\"language\":\"english\"," +
					"\"summary_percent\":" + summaryPercent + "," +
					"\"text\":" + "\"" + myTestString + "\"" + "}";

				//POST to endpoint first
				try(OutputStream os = client.getOutputStream()) {
					byte[] input = jsonBody.getBytes("utf-8");
					os.write(input, 0, input.length);

For some reason, when I make the request via RapidApi it works, but when I do it via Java the response is always this:

{3 items
"msg":“validation error, incorrect data passed to the server”

I have made sure my JSON body passed in is in good format. Any ideas?

gaurmanojkumar530 commented 4달 전

We are glad that you were able to solve the issue. Thank you for choosing us.

karimo94 commented 5달 전

I have solved it. The way to create the JSON payload is to use Gson library by putting all the request parameters into a map, then using Gson to convert it into proper json. The request now works, thank you.

karimo94 commented 5달 전

@gaurmanojkumar530 https://devqa.io/how-to-convert-java-map-to-json/

what parameters are we converting from the map to JSON? is it the headers? or the JSON payload itself?

gaurmanojkumar530 commented 5달 전

I am not familiar with Java.
But do you have a way to convert a Dictionary or Key-Value pair to JSON in Java.
This is the way we do it in python.
It is best to use a dedicated library for this purpose.

아래에 의견을 추가하고 토론에 참여하세요.

새 댓글을 게시하려면 로그인 / 가입
등급: 4 - 투표: 4