- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试使用以下类连接到 OAuth2 服务器实现(为了完整性而发布完整内容):
import com.google.gwt.http.client.*;
import com.googlecode.gwt.crypto.bouncycastle.util.encoders.Base64;
import java.util.Map;
import java.util.function.Consumer;
public class HttpManager {
private static String toFormData(Map<String, String> data) {
StringBuilder sb = new StringBuilder();
for (Map.Entry<String, String> entry : data.entrySet())
sb.append("&")
.append(entry.getKey())
.append("=")
.append(entry.getValue());
sb.deleteCharAt(0);
return sb.toString();
}
public void postFormData(String url, Map<String, String> data, Consumer<Response> onSuccess, Consumer<Response> onFail) throws RequestException {
final String dataAsString = toFormData(data);
RequestBuilder builder = new RequestBuilder(RequestBuilder.POST, url);
builder.setHeader("Content-Type", "application/x-www-form-urlencoded");
builder.setHeader("Accept", "application/x-www-form-urlencoded");
builder.setHeader("Authorization", "Basic " + Base64.encode(("appId" + ":" + "oauthSecret").getBytes()));
builder.sendRequest(dataAsString, new RequestCallback() {
@Override
public void onResponseReceived(Request request, Response response) {
if(response.getStatusCode() >= 400) {
onFail.accept(response);
} else {
onSuccess.accept(response);
}
}
@Override
public void onError(Request request, Throwable throwable) {
onFail.accept(null);
}
});
}
}
如您所见,我清楚地将 Content-Type、Accept 和 Authorization 附加到 header 。此外,我还发布了一些数据。
但实际上,请求如下所示:
OPTIONS /oauth/token HTTP/1.1
Host: 127.0.0.1:8080
Connection: keep-alive
Access-Control-Request-Method: POST
Origin: http://192.168.2.101:8888
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.87 Safari/537.36
Access-Control-Request-Headers: accept, authorization, content-type
Accept: */*
Referer: http://192.168.2.101:8888/demo.html
Accept-Encoding: gzip, deflate, sdch
Accept-Language: de-DE,de;q=0.8,en-US;q=0.6,en;q=0.4
鉴于上述设置,我不会期望看到这样的请求。我的请求 header 发生了什么?而且,根本没有剩下请求正文。为什么请求类型是Option?有人可以透露一些信息吗?
最佳答案
这是由于请求是跨域的,您看到的是 CORS 中的预检请求说法。这是预期的行为,服务器必须使用适当的响应 header 对其进行授权。
关于java - GWT RequestBuilder setHeader 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36109695/
我正在从 Android 应用程序向服务器发送 JSON 数据,我在人们添加的示例中看到: httpPost.setHeader("Content-type", "application/json")
当我使用文件名变量来设置下载文件的名称时,它看不到该变量。但是如果我不使用变量作为文件名,那么它会根据我的需要设置名称。 response().setHeader("Content-dispositi
我正在开发 ChromeLogger 的 CF 接口(interface)扩展程序 ( shameless plug ),它使用 HTTP header 将数据从服务器端语言记录到 Chrome 控制
我有一个小型 Camel 项目,其中我从文件系统读取文件并在我的 route 处理它们。在我设置的流程函数内 exchange.getOut().setHeader("tc.GIARO.item.id
我正在尝试使用以下类连接到 OAuth2 服务器实现(为了完整性而发布完整内容): import com.google.gwt.http.client.*; import com.googlecode
我有一个 (A) servlet 从另一个 Servlet (B) 监听 GETS。 B 使用 HTTPClient 返回给 A,如下所示。 get.setRequestHeader("name",j
您好,我有一个 Google Web Toolkit 项目。我想用 response.setHeader("Cache-Control", "no-cache, no-store, must-reva
我们如何在来自处理器的 apache Camel 交换消息中将 header 值设置为空。我正在将消息传递给 RabbitMQ 交换,它希望将 header 值之一设置为 null。 在传递消息之前,
我在 setHeader 中有 139 个 switch case private static void setHeader(String headertableField, String head
我正在阅读有关 Apache Camel 的一些文档,但无法理解 setHeader()在 Apache Camel 中执行。它是否向 from 中指定的文件添加了标题? .并建议一些链接,我可以在其
我在 Java 中使用 Apache 的 HttpClient 4.3.6 并尝试使用 HttpPost.setHeader(String, string),但得到: The method setHe
使用 Apache HttpClient 版本时: org.apache.httpcomponents httpclient 4.5.6 setHeader 和 addHe
HttpServletResponse.setHeader 方法应该如何处理 null 值,如下所示: response.setHeader("ETag", null); 在实现Servlet接口(i
我在从 NSMutableArray 中获取值时遇到了问题。我想动态解析 requestHeader 的值。我在服务器上发布数据。 喜欢: [theRequest setValue:@"applica
当用户 session 过期或连接不活动时,我正在尝试刷新我的网页。我尝试了很多代码,但似乎没有用。我使用的最后一个代码是 if(session.getAttribute("connection")
我不太确定下面这段代码的意义。似乎它可能会导致页面在某个给定的时间间隔自动刷新。然而,这只是一个猜测。这个“刷新”参数是如何使用的?任何其他解释表示赞赏。我已经做了一些谷歌搜索/查看文档无济于事。 /
我是 servlet 开发的新手,我正在阅读一本电子书,发现我可以使用 重定向到不同的网页 setHeader("Location", "http://www.google.com") 但这不起作用,
本文整理了Java中org.apache.jackrabbit.webdav.WebdavResponse.setHeader()方法的一些代码示例,展示了WebdavResponse.setHead
本文整理了Java中com.sk89q.util.yaml.YAMLProcessor.setHeader()方法的一些代码示例,展示了YAMLProcessor.setHeader()的具体用法。这
本文整理了Java中com.netflix.zuul.message.ZuulMessage.setHeaders()方法的一些代码示例,展示了ZuulMessage.setHeaders()的具体用
我是一名优秀的程序员,十分优秀!