public static boolean deleteSubscribe(String subscription_id, String authToken){
HttpClient httpClient = new DefaultHttpClient();
HttpPost httpPost = new HttpPost("https://gdata.youtube.com/feeds/api/users/default/subscriptions/"+subscription_id+"?v=2");
httpPost.setHeader("DELETE", "/feeds/api/users/default/subscriptions/"+subscription_id+" HTTP/1.1");
httpPost.setHeader("Host", "gdata.youtube.com");
httpPost.setHeader("Authorization", "Bearer "+authToken);
httpPost.setHeader("GData-Version", "2");
httpPost.setHeader("X-GData-Key", "key="+DeveloperKey.DEVELOPER_KEY);
HttpResponse httpResponse = null;
httpPost.setHeader("Content-type","application/atom+xml");
try {
httpResponse = httpClient.execute(httpPost);
BufferedReader reader = new BufferedReader(new InputStreamReader(httpResponse.getEntity().getContent(), "UTF-8"));
String json = reader.readLine();
System.out.println("remove:" + json);
} catch (ClientProtocolException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return (httpResponse.getStatusLine().getStatusCode() == HttpStatus.SC_CREATED);
}
我正在使用此代码删除Youtube API中的订阅。我可以成功添加订阅但删除功能时出现错误:
http://schemas.google.com/g/2005'>GData
invalidRequestUri
无效 请求URI
docs的原始链接。
有人可以帮忙吗?
答案 0 :(得分:1)
尝试对您的开发人员密钥,authtoken和subscription_id进行urlencode。