Tag: http

GWT HTTP请求响应代码0,CORS正在工作

我正在使用GWT 2.4来构建一个完全在客户端运行的应用程序,并使用我控制但在其他服务器上托管的Web服务。 在这个Java Servlet Web服务上,我实现了doOptions,如下所示: protected void doOptions(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.addHeader(“Access-Control-Allow-Origin”, “*”); response.addHeader(“Access-Control-Allow-Methods”, “POST, GET”); } 在GWT的客户端我以标准方式提交请求,例如 public static void makeHttpGetRequest(String query, RequestCallback callback) { String url = “http://example.webservice.com/endpoint” + “?q=” + query; RequestBuilder builder = new RequestBuilder(RequestBuilder.GET, URL.encode(url)); try { builder.sendRequest(query, callback); } catch (RequestException e) { Window.alert(“Server encountered […]

Android:下载文件并保存在SD卡上

试图创建一个应用程序来下载SD卡上的文件,这是我的代码: public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); new Thread(new Runnable() { public void run() { Log.i(“step0″,”it starts here”); URLConnection urlConnection = null; // TODO Auto-generated method stub try { //fetching the URL Log.i(“step 1.1″,”getting the url”); URL url = new URL(“http://people.opera.com/howcome/2005/ala/sample.pdf”); Log.i(“step 1.2″,”captured the url”); urlConnection = […]

如何使用Java App Engine正确上传(映像)文件到Google云端存储?

我有一个谷歌应用引擎实例,使用java(sdk 1.9.7),它连接到谷歌云存储。 我能够成功接收请求的输入并将其输出到我的Google云存储桶中的文件/对象。 这是我的servlet代码: public void doPost(HttpServletRequest req, HttpServletResponse resp) throws IOException { // read the input stream byte[] buffer = new byte[1024]; List allBytes = new LinkedList(); InputStream reader = req.getInputStream(); while(true) { int bytesRead = reader.read(buffer); if (bytesRead == -1) { break; // have a break up with the loop. } else if […]

如何在android上使用代理进行HTTP连接?

通常的java方式似乎不起作用 – 我在那里放入虚假值,它仍然“工作”,所以似乎android不读取这些属性。 我还将此信息放入OS的“设置”部分(通过GUI)。 有任何想法吗? 谢谢。 Properties props = System.getProperties(); props.put(“http.proxyHost”, “190.128.1.69”); props.put(“http.proxyPort”, “80”);

HTTP Builder / Groovy – 丢失302(重定向)处理?

我在这里阅读http://groovy.codehaus.org/modules/http-builder/doc/handlers.html “在响应发送重定向状态代码的情况下,这由Apache HttpClient内部处理,默认情况下只是通过将请求重新发送到新url来关注重定向。您无需执行任何特殊操作即可遵循302响应。“ 当我只使用没有闭包的get()或post()方法时,这似乎工作正常。 但是,当我使用一个闭包时,我似乎失去了302处理。 我有办法自己处理吗? 谢谢 ps这是我的日志输出,显示它是302响应 [java] FINER: resp.statusLine: “HTTP/1.1 302 Found” 这是相关的代码: // Copyright (C) 2010 Misha Koshelev. All Rights Reserved. package com.mksoft.fbbday.main import groovyx.net.http.ContentType import java.util.logging.Level import java.util.logging.Logger class HTTPBuilder { def dataDirectory HTTPBuilder(dataDirectory) { this.dataDirectory=dataDirectory } // Main logic def logger=Logger.getLogger(this.class.name) def closure={resp,reader-> logger.finer(“resp.statusLine: \”${resp.statusLine}\””) if (logger.isLoggable(Level.FINEST)) { def respHeadersString=’Headers:’; […]

文件上传流从哪里获取内容?

我有一个关于文件上传的问题,这与它的工作原理有关,而不是代码问题。 我在互联网上看了,但我找不到合适的答案。 我有一个在tomcat上运行的Web应用程序,它处理文件上传(通过servlet)。 假设我现在要上传大文件(> 1 Gb)。 我的理解是,一旦实际传输了整个文件,HTTP请求的多部分内容就可以在我的servlet中使用。 我的问题是请求的内容实际存储在哪里? 当一个人调用HttpServletRequest.getParts()时, Part对象上有一个InputStream 。 但是,从哪里读取流? Tomcat将它存储在某个地方吗? 我想这可能不够清楚,所以我会根据你的意见更新post,如果有的话。 谢谢

如何在MainActivity.java中创建简单的HTTP请求? (Android Studio)

我正在使用Android Studio,并且我花了几个小时尝试在我的MainActivity.java文件中执行一个简单的HTTP请求,并尝试了多种方式,并且看到了很多关于这个主题的网页,但却无法弄清楚。 当我尝试OkHttp时,我收到一条关于无法在主线程上执行此操作的错误。 现在我试着这样做: public static String getUrlContent(String sUrl) throws Exception { URL url = new URL(sUrl); HttpURLConnection connection = (HttpURLConnection) url.openConnection(); connection.setRequestMethod(“GET”); connection.setDoOutput(true); connection.setConnectTimeout(5000); connection.setReadTimeout(5000); connection.connect(); BufferedReader rd = new BufferedReader(new InputStreamReader(connection.getInputStream())); String content = “”, line; while ((line = rd.readLine()) != null) { content += line + “\n”; } return content; } 我将该方法直接放在MainActivity.java中,我的click事件从MainActivity.java中的另一个方法执行它: […]

通过RFC 5987处理带有空格的filename *参数会在文件名中生成“+”

我有一些我正在处理的遗留代码(所以我不能只使用带有编码文件名组件的URL),允许用户从我们的网站下载文件。 由于我们的文件名通常有许多不同的语言,因此它们都存储为UTF-8。 我写了一些代码来处理RFC5987转换为正确的文件名*参数。 这非常有用,直到我有一个非ascii字符和空格的文件名。 根据RFC,空格字符不是attr_char的一部分,因此它被编码为%20。 我有新版本的Chrome和Firefox,他们都在下载时转换为%20到+。 我试过不编码空格并将编码的文件名放在引号中并获得相同的结果。 我已经嗅到了来自服务器的响应,以validationservlet容器没有弄乱我的标题,它们看起来对我来说是正确的。 RFC甚至包含%20的示例。 我错过了什么,或者所有这些浏览器都有与此相关的错误? 提前谢谢了。 我用来编码文件名的代码如下。 彼得 public static boolean bcsrch(final char[] chars, final char c) { final int len = chars.length; int base = 0; int last = len – 1; /* Last element in table */ int p; while (last >= base) { p = base + […]

设置响应标头不使用filter – RESTeasy

我正在尝试使用RESTeasy在RESTful端点的响应中设置标头值。 我知道我可以使用@HeaderParam读取头参数,但我想更改响应的头参数的值。 如何在不使用filter的情况下执行此操作?

找不到Java 9 Zip End Headerexception

我试图使用java- SRTM文件从这个URL批量下载zip文件,它需要用户名/密码下载,我使用以下java代码,它给了我以下exception java.util.zip.ZipException: zip END header not found at java.util.zip.ZipFile$Source.zerror(java.base@9-internal/ZipFile.java:1210) at java.util.zip.ZipFile$Source.findEND(java.base@9-internal/ZipFile.java:1119) at java.util.zip.ZipFile$Source.initCEN(java.base@9-internal/ZipFile.java:1126) at java.util.zip.ZipFile$Source.(java.base@9-internal/ZipFile.java:963) at java.util.zip.ZipFile$Source.get(java.base@9-internal/ZipFile.java:933) at java.util.zip.ZipFile.(java.base@9-internal/ZipFile.java:213) at java.util.zip.ZipFile.(java.base@9-internal/ZipFile.java:145) at java.util.zip.ZipFile.(java.base@9-internal/ZipFile.java:159) at toposwapper.rules.ZipFileDownloadAction.execute(ZipFileDownloadAction.java:29) 这是我的java版本 java openjdk version “9-internal” OpenJDK Runtime Environment (build 9-internal+0-2016-04-14-195246.buildd.src) OpenJDK 64-Bit Server VM (build 9-internal+0-2016-04-14-195246.buildd.src, mixed mode) 这是我用来下载的代码 – URL url1 = null; URLConnection conn = null; InputStream […]