标签: client

如何使用Apache HttpClient 4获取文件上传的进度条?

我有以下代码用于使用Apache的HTTP-Client(org.apache.http.client)上传文件:

  public static void main(String[] args) throws Exception
  {
    String fileName = "test.avi";
    File file = new File(fileName);

    String serverResponse = null;
    HttpParams params = new BasicHttpParams();
    params.setParameter(HttpProtocolParams.USE_EXPECT_CONTINUE, true);
    HttpProtocolParams.setVersion(params, HttpVersion.HTTP_1_1);
    HttpClient client = new DefaultHttpClient(params);
    HttpPut put = new HttpPut("http://localhost:8080/" + fileName);

    FileEntity fileEntity = new FileEntity(file, "binary/octet-stream");
    put.setEntity(fileEntity);   

    HttpResponse response = client.execute(put);
    HttpEntity entity = response.getEntity();
    if (entity != null)
    {
      serverResponse = EntityUtils.toString(entity);
      System.out.println(serverResponse);
    }
  }
Run Code Online (Sandbox Code Playgroud)

它工作得很好,但现在我想要一个进度条,显示文件上传的进度.怎么做到这一点?我在File Upload with Java(带进度条)中找到了一个代码片段,但是它是为Apache HTTP Client 3(org.apache.commons.httpclient)设计的,并且Apache HTTP Client …

java apache client http progress

22
推荐指数
4
解决办法
2万
查看次数

是否有适用于Windows的github客户端

有人可以建议任何Windows客户端GitHub?我找到了Tower客户端Mac(http://www.git-tower.com/),似乎它通过API与GitHub很好地集成.您是否知道具有类似功能的Windows客户端?

更新是的感谢所有的答案,我知道这三个,但他们只与GIT集成,而不是GitHub.我的意思是GitHub的一些社交功能,例如对传入请求的审阅,对这些传入请求的评论,内部GitHub消息传递支持,在客户端上创建新存储库的可能性,管理GitHub存储库设置以及类似功能,订阅其他存储库并获取通知当他们改变.据我所知,GitHub API中提供了大部分功能,但我找不到任何使用此API的Windows客户端.

windows client github

21
推荐指数
2
解决办法
2万
查看次数

如何使用RestSharp访问HTTP请求正文?

我正在使用C#.NET 3.5构建RESTful API客户端.

我第一次开始用好的HttpWebClient(和HttpWebResponse)来构建它,我可以做任何我想做的事.我很高兴.我唯一坚持的是JSON响应的自动反序列化.

所以,我听说过一个名为RestSharp(104.1)的精彩库,它可以简化RESTful API客户端的开发,并自动反序列化JSON和XML响应.我打开它在我的所有代码,但现在我知道我不能做的事情,我可以做HttpWebClientHttpWebResponse,就像访问和编辑原始请求主体.

有人有解决方案吗?

编辑:我知道如何设置请求体(带request.AddBody()),我的问题是我想获取此请求体字符串,编辑它,并在请求中重新设置它(动态更新请求体)

c# rest client .net-3.5 restsharp

21
推荐指数
1
解决办法
2万
查看次数

SVN错误:'1'和'3'之间的预期fs格式; 找到格式'4'

这是我做的,我已经安装了svnserve作为服务,我用net start svn service命令启动它.我键入svn ls svn:// localhost来测试服务,但它返回了错误,如本文标题所述.

我在我的计算机上输入了svn --versionsvnserve --version来查找版本号,客户端和服务器版本是相同的,版本1.5.6.我猜测由于服务器和客户端的不同版本而出现错误.

当我在cmd中使用svnserve --daemon --root命令启动服务器时,仍会出现错误.

为什么会出现错误?谢谢

svn client version

20
推荐指数
2
解决办法
5万
查看次数

客户端与服务器端重定向的最佳实践:何时使用什么?

据我所知,大多数语言都支持服务器端重定向(asp.net: Response.Redirect, PHP: header( 'newpage' ) ; ).您也可以使用JavaScript进行重定向(window.location.href="newLocationURL").

你何时会选择一个而不是另一个?

关于ASP.net/IIS7(集成模式下的app池,启用32位apps = false),我注意到即使页面有302标题,整个页面主体也会被发送到客户端.

而且我相信这不是用PHP的情况下,只有头部被发送?在客户端引用Redirect意味着以下步骤:客户端 - >服务器端 - >客户端 - >服务器端 - >客户端.

服务器端重定向意味着:客户端 - >服务器端 - >客户端(仅限标头)* - >服务器端 - >客户端.

W3C标准或服务器端重定向实现是否因Web服务器技术而异?

编辑:我只关心Response.Redirect(在asp.net中)而不是server.transfer,至少对于这个讨论

webserver redirect client

20
推荐指数
2
解决办法
3万
查看次数

AngularJS和企业应用程序

我们目前正在评估AngularJS在企业应用程序(电子银行)中作为单页应用程序的使用.许多开发人员@工作已经确信没有其他方法可去.这是趋势,它是未来证明(html,css和js)它很容易做,减少服务器负担等.尽管这个框架的有趣部分,我不相信有必须考虑的因素在走这条路之前.这些可以是:

  • 代码的可维护性
  • 代码的可测试性,不仅仅是ui部分
  • 持续集成(如TeamCity或TFS)
  • 开发人员友好,如调试,浏览代码
  • 安全(如果存在风险)

有没有任何关于企业应用程序构建的经验?我宁愿选择Asp.Net MVC4.请不要假设答案,我不想发动战争.真实的生活经历真的很感激.

问候

javascript user-interface enterprise client angularjs

20
推荐指数
1
解决办法
1万
查看次数

NoSuchMethodError:Jersey客户端中的MultivaluedMap.addAll

我正在尝试使用Jersey Client来模拟对我的Web服务的HTTP请求.我试图从文档中实现这个简单的例子.这是我的简短代码:

public void restoreTest(String sessionId) throws Exception {
    Client client = ClientBuilder.newClient();
    WebTarget target = client.target(idsUrl).path("restore");
    Form form = new Form();
    form.param("sessionId", sessionId);
    target.request(MediaType.APPLICATION_FORM_URLENCODED_TYPE);
}
Run Code Online (Sandbox Code Playgroud)

我甚至没有实现整个示例,因为目前我在最后一行得到一个异常:

java.lang.NoSuchMethodError: javax.ws.rs.core.MultivaluedMap.addAll(Ljava/lang/Object;[Ljava/lang/Object;)V
    at org.glassfish.jersey.client.ClientRequest.accept(ClientRequest.java:254)
    at org.glassfish.jersey.client.JerseyWebTarget.request(JerseyWebTarget.java:232)
    at org.glassfish.jersey.client.JerseyWebTarget.request(JerseyWebTarget.java:60)
    at org.icatproject.idsclient.TestingClient.restoreTest(TestingClient.java:112)
    at org.icatproject.ids.ids2.ArchiveTest.restoreThenArchiveDataset(ArchiveTest.java:55)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:616)
    at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:44)
    at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
    at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:41)
    at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20)
    at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:28)
    at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:76)
    at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50)
    at org.junit.runners.ParentRunner$3.run(ParentRunner.java:193)
    at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:52)
    at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:191)
    at org.junit.runners.ParentRunner.access$000(ParentRunner.java:42)
    at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:184)
    at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:28)
    at org.junit.runners.ParentRunner.run(ParentRunner.java:236)
    at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:50) …
Run Code Online (Sandbox Code Playgroud)

java client jax-rs jersey

20
推荐指数
2
解决办法
3万
查看次数

在Windows上使用Git

现在最简单的(安装和使用)Windows的git客户端是什么?

windows git version-control client

19
推荐指数
3
解决办法
3447
查看次数

.NET应用程序无法发送客户端证书 - Win 7 vs Win XP?

我正在开发一个ASP.NET Web应用程序,它使用HttpWebRequest向另一台服务器发送请求.它通过HTTPS发送请求,远程服务器需要客户端证书.请求在.NET应用程序中失败,显然无法发送正确的客户端证书.我能够成功连接并发送客户端证书,如果我只需访问URL以网页浏览器(Chrome明确).

下面的代码是一个简单的再现,只有一个基本的GET请求.

var r = WebRequest.Create(url) as HttpWebRequest;
r.ClientCertificates = new X509CertificateCollection { myX509Cert };
using (var resp = r.GetResponse() as HttpWebResponse) {
    ...
}
Run Code Online (Sandbox Code Playgroud)

我得到了我们最喜欢的例外,"无法创建SSL/TLS安全通道".通常,这些类型的问题指向证书私钥的权限问题.我尝试了所有我能想到的东西,以确保这一切都正确配置,但也许我错过了一些东西.简而言之,远程服务器正在发送一个TLS CertificateRequest,其列表似乎正确地标识了我的客户端证书,但我的应用程序无法响应任何客户端证书.

这是我的设置:

  • Windows 7专业版64位
  • 能够在Visual Studio开发服务器,在本地IIS中运行的ASP.NET WebForms/.NET 3.5应用程序以及.NET控制台应用程序/ .NET 4中运行的ASP.NET MVC 3/.NET 4应用程序中重现该问题
  • 最近安装了Microsoft .NET Framework 4.5.还没有检查这是否是一个问题

这是我尝试过的一切,以及我所知道的:

  • 在Windows XP计算机上运行时,此代码似乎工作正常
  • 我确保将我的客户端证书导入到本地计算机,个人证书存储中,并为我自己和所有相关IIS用户正确配置了私钥权限
  • 我尝试在我的机器上重新安装证书几次
  • 我已经确认.NET应用程序可以访问X509证书并且HasPrivateKey= true
  • 确保我的客户证书有效.它实际上是运行此应用程序的Web服务器的SSL证书
  • PreAuthenticate = true在请求对象中设置.没有什么区别
  • 我尝试过设置ServicePointManager.Expect100Continue = false,没有什么区别
  • 我试过设置ServicePointManager.SecurityProtocol = SecurityProtocolType.Ssl3,但显然远程服务器需要TLS,所以没有帮助
  • 我设置一个ServicePointManager.ServerCertificateValidationCallback委托总是返回true.但是,在TLS握手中,它甚至在调用此委托之前就失败了
  • 当我转到Chrome中的URL时,它会要求我提供客户端证书,提供正确的客户端证书作为选择,我选择该证书并获得有效的响应.当我在Fiddler中构造请求时也能正常工作.所以它似乎特别是我的.NET代码,而不是证书本身或远程服务器等问题.
  • 我正在使用的供应商在不同的远程服务器上设置了相同的服务,该服务需要不同的客户端证书.所以我尝试了不同的URL和客户端证书同样的事情,并得到了同样的失败

我添加了System.Net跟踪,看到了这个: …

.net ssl client certificate

19
推荐指数
2
解决办法
1万
查看次数

带有客户端证书的android webview

我试了好几天使用Web视图并在应用程序中嵌入了客户端证书,但在我看来,android sdk没有提供任何方法来执行此操作,是否有回调来拦截服务器发送的质询?有没有办法将webview与客户端证书一起使用并发出https请求?

ssl client android certificate webview

19
推荐指数
4
解决办法
4万
查看次数