Text Analysis

Por Bhavya Gaur | Atualizado 9 months ago | Text Analysis

9.8 / 10



Nível de serviço


Voltar para todas as discussões

"validation error, incorrect data passed to the server"

5 months ago

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 5 months ago

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

karimo94 commented 5 months ago

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 months ago

@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 months ago

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.

Junte-se à discussão - adicione o comentário abaixo:

Efetue login / inscreva-se para postar novos comentários
Avaliação: 4 - Votos: 4