Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/oracle/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java surveymonkey API调用返回状态代码3-请求无效_Java_Client_Httpurlconnection_Surveymonkey - Fatal编程技术网

Java surveymonkey API调用返回状态代码3-请求无效

Java surveymonkey API调用返回状态代码3-请求无效,java,client,httpurlconnection,surveymonkey,Java,Client,Httpurlconnection,Surveymonkey,编辑:谢谢你的建议。我更改了代码以实现json对象,而不是字符串,并在正文中发送 这就是我试图从调查猴子那里得到的细节。我得到的响应代码为200,但无法获得所需的数据。谁能告诉我我哪里做错了。 可能这个url有助于指定我要做的事情 这是o/p I get{“status”:3,“errmsg”:“无法解码任何JSON对象:第1行第0列(char 0)”} 帖子正文的JSON编码无效 您的代码String body=“'{\'字段\':[\'标题\']}' 应该是String body=“{\”f

编辑:谢谢你的建议。我更改了代码以实现json对象,而不是字符串,并在正文中发送

这就是我试图从调查猴子那里得到的细节。我得到的响应代码为200,但无法获得所需的数据。谁能告诉我我哪里做错了。 可能这个url有助于指定我要做的事情 这是o/p I get{“status”:3,“errmsg”:“无法解码任何JSON对象:第1行第0列(char 0)”}


帖子正文的JSON编码无效

您的代码
String body=“'{\'字段\':[\'标题\']}'

应该是
String body=“{\”fields\”:[\“title\”]}


我建议在编码JSON对象时使用类似的JSON库,以避免无效的JSON。随着应用程序的开发,库也将变得更加灵活。

试着去掉正文中的单引号。是的,我确实试过这样做。但响应仍然是相同的:{“status”:3,“errmsg”:“无法解码JSON对象:第1行第0列(char 0)”}下面是工作代码。谢谢你的建议。唯一的额外改变是重新调整我的身体<代码>字符串输入=“{}”;OutputStream os=conn.getOutputStream();write(input.getBytes());os.flush()
    package surveydetails;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
import org.json.simple.JSONArray;
import org.json.simple.JSONObject;

public class Surveydetails {

        public static void main(String args []) {       
        String url = "https://api.surveymonkey.net/v2/surveys/get_survey_list?api_key=myapikey";                    
                    System.out.println("request being sent");
                    System.out.println(url);
                    JSONObject obj = new JSONObject();



                    try {
                        //byte[] postDataBytes = obj.toJSONString().getBytes("UTF-8");
                        URL ourl = new URL(url.toString());
                        HttpURLConnection conn = (HttpURLConnection) ourl.openConnection();
                        conn.setRequestMethod("POST");


conn.setRequestProperty("Authorization", "bearer myauthtoken"); 
conn.setRequestProperty("Content-Type", "application/json");

conn.getRequestProperty(obj.toString().getBytes("UTF-8").toString());


                        int k = conn.getResponseCode();
                        System.out.println("The response code received is "+k);
                        if (conn.getResponseCode() != 200) {
                            throw new RuntimeException("Failed : HTTP error code : "
                                    + conn.getResponseCode());
                        }
                        BufferedReader br = new BufferedReader(new InputStreamReader(
                                (conn.getInputStream())));

                        String output;

                        System.out.println("Output from Server .... \n");


                            output = br.readLine();
                            System.out.println(output);


                    } catch (MalformedURLException e) {

                        e.printStackTrace();
                    } catch (IOException e) {
                        e.printStackTrace();
                    }

                }
}