Java 从HTTP请求在Netsparker中添加扫描网站时出错
我正在尝试添加一个网站url,以便通过java rest调用在Netsparker中进行扫描 身份验证已完成,但出现以下错误:Java 从HTTP请求在Netsparker中添加扫描网站时出错,java,rest,Java,Rest,我正在尝试添加一个网站url,以便通过java rest调用在Netsparker中进行扫描 身份验证已完成,但出现以下错误: Error- HTTP/1.1 400 Bad Request X-Frame-Options: DENY Strict-Transport-Security: max-age=31536000; includeSubDomains; preload Date: Fri, 22 Jan 2016 08:48:51 GMT Content-Length: 98 X-XS
Error-
HTTP/1.1 400 Bad Request
X-Frame-Options:
DENY
Strict-Transport-Security: max-age=31536000; includeSubDomains; preload
Date: Fri, 22 Jan 2016 08:48:51 GMT
Content-Length: 98
X-XSS-Protection: 1; mode=block
Expires: -1
Connection: keep-alive
Content-Type: application/json; charset=utf-8
Server: Apigee Router
X-Content-Type-Options: nosniff
Pragma: no-cache
Cache-Control: no-cache
Authentication request-
PasswordAuthentication (AuthToken, "".toCharArray());
最近,他们可能已经更改了API,因此,如果有人曾经使用过它,并且能够提供一个示例片段,我们将不胜感激。
提前感谢。我已经写了一段代码,它没有任何依赖性 用API令牌替换您的API令牌。 如果你想创建基于订阅的网站,你应该用“订阅”替换“信用”
哦谢谢Oguzhan Topcu。它真的帮助了我。
package com.netsparkercloud;
import javax.net.ssl.HttpsURLConnection;
import java.io.*;
import java.net.MalformedURLException;
import java.net.ProtocolException;
import java.net.URL;
public class Main {
public static void main(String[] args) {
String createWebsiteEndpoint = "https://www.netsparkercloud.com/api/1.0/websites/new";
try {
URL url = new URL(createWebsiteEndpoint);
HttpsURLConnection con = (HttpsURLConnection)url.openConnection();
con.setRequestProperty("Authorization", "Basic YOUR_API_TOKEN");
con.setRequestProperty("Content-Type", "application/json");
con.setRequestProperty("Accept", "application/json");
con.setRequestMethod("POST");
con.setDoOutput(true);
con.setDoInput(true);
con.connect();
OutputStreamWriter wr = new OutputStreamWriter(con.getOutputStream());
wr.write("{\n" +
" \"Name\": \"Java Test\",\n" +
" \"RootUrl\": \"http://test.com\",\n" +
" \"LicenseType\": \"Credit\"\n" +
"}");
wr.flush();
wr.close();
InputStream is;
if (con.getResponseCode() >= 400) {
is = con.getErrorStream();
} else {
is = con.getInputStream();
}
Reader in = new BufferedReader(new InputStreamReader(is, "UTF-8"));
for ( int c = in.read(); c != -1; c = in.read() )
System.out.print((char)c);
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
} catch (ProtocolException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}