我是java的新手,想在java中使用curl.我的问题是我在java中内置的curl,或者我必须从任何第三方源安装它以与Java一起使用.如果是这样,如何在java中安装curl.我已经谷歌搜索了很长时间,但没有找到任何帮助.希望任何人都可以帮助我.
提前致谢.
在性能,稳定性,成熟度等方面,用于HTTP POST,GET等的最佳Java库是什么?是否有一个特定的库比其他库使用更多?
我的要求是向远程服务器提交HTTPS POST请求.我过去使用过java.net.*包以及org.apache.commons.httpclient.*包.两人都完成了工作,但我想要你的一些意见/建议.
我对Java很新,所以对某些人来说这似乎是显而易见的.我在ActionScript上做了很多工作,这是基于事件的,我很喜欢.我最近尝试编写了一小部分执行POST请求的Java代码,但我遇到了一个问题,即它是一个同步请求,因此代码执行会等待请求完成,超时或出现错误.
如何创建异步请求,代码继续执行,并在HTTP请求完成时调用回调?我瞥了一眼线程,但我认为这太过分了.
在android中,如何使用http将文件(数据)从移动设备发送到服务器.
我想将一些文件上传到HTTP服务器.基本上我需要的是一些带有一些参数和文件的服务器POST请求.我见过只上传文件的例子,但没有找到如何传递其他参数.
这样做最简单,最自由的解决办法是什么?有没有人有我可以学习的文件上传示例?我一直在谷歌上搜索几个小时,但(也许只是其中一天)我找不到我需要的东西.最好的解决方案是不涉及任何第三方类或库的东西.
自API级别22以来,Android已经弃用了Apache模块,所以我的问题是,我如何使用,例如 HttpResponse来自Apache库,而不是Android SDK?问题是两个包都是一样的.
但是,例如,HttpGet没关系,因为它HttpGetHC4在Apache中被调用.
好吧,我正在试图弄清楚如何从网页中提取信息,并将其带入我的程序(用Java).
例如,如果我知道我想要信息的确切页面,为了简单起见,Best Buy项目页面,我如何从该页面获得我需要的相应信息?喜欢标题,价格,描述?
这个过程甚至会被称为什么?我不知道甚至开始研究这个.
编辑:好的,我正在为JSoup(由BalusC发布的那个)运行测试,但我一直收到这个错误:
Exception in thread "main" java.lang.NoSuchMethodError: java.util.LinkedList.peekFirst()Ljava/lang/Object;
at org.jsoup.parser.TokenQueue.consumeWord(TokenQueue.java:209)
at org.jsoup.parser.Parser.parseStartTag(Parser.java:117)
at org.jsoup.parser.Parser.parse(Parser.java:76)
at org.jsoup.parser.Parser.parse(Parser.java:51)
at org.jsoup.Jsoup.parse(Jsoup.java:28)
at org.jsoup.Jsoup.parse(Jsoup.java:56)
at test.main(test.java:12)
Run Code Online (Sandbox Code Playgroud)
我有Apache Commons
我必须向Web服务发出http post请求,以使用用户名和密码对用户进行身份验证.网络服务人员给了我以下信息来构建HTTP Post请求.
POST /login/dologin HTTP/1.1
Host: webservice.companyname.com
Content-Type: application/x-www-form-urlencoded
Content-Length: 48
id=username&num=password&remember=on&output=xml
Run Code Online (Sandbox Code Playgroud)
我将获得的XML响应是
<?xml version="1.0" encoding="ISO-8859-1"?>
<login>
<message><![CDATA[]]></message>
<status><![CDATA[true]]></status>
<Rlo><![CDATA[Username]]></Rlo>
<Rsc><![CDATA[9L99PK1KGKSkfMbcsxvkF0S0UoldJ0SU]]></Rsc>
<Rm><![CDATA[b59031b85bb127661105765722cd3531==AO1YjN5QDM5ITM]]></Rm>
<Rl><![CDATA[username@company.com]]></Rl>
<uid><![CDATA[3539145]]></uid>
<Rmu><![CDATA[f8e8917f7964d4cc7c4c4226f060e3ea]]></Rmu>
</login>
Run Code Online (Sandbox Code Playgroud)
这就是我正在做的HttpPost postRequest = new HttpPost(urlString); 我如何构建其余参数?
我正在编写一个小型Java程序来获取给定Google搜索词的结果数量.出于某种原因,在Java中我得到403 Forbidden但我在Web浏览器中获得了正确的结果.码:
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.URL;
public class DataGetter {
public static void main(String[] args) throws IOException {
getResultAmount("test");
}
private static int getResultAmount(String query) throws IOException {
BufferedReader r = new BufferedReader(new InputStreamReader(new URL("https://www.google.com/search?q=" + query).openConnection()
.getInputStream()));
String line;
String src = "";
while ((line = r.readLine()) != null) {
src += line;
}
System.out.println(src);
return 1;
}
}
Run Code Online (Sandbox Code Playgroud)
而错误:
Exception in thread "main" java.io.IOException: Server returned HTTP response code: 403 for URL: https://www.google.com/search?q=test
at …Run Code Online (Sandbox Code Playgroud) java ×8
android ×3
http ×2
apache ×1
asynchronous ×1
curl ×1
file-upload ×1
html ×1
http-post ×1
httprequest ×1
jsoup ×1
post ×1
web-scraping ×1