小编KAR*_*ván的帖子

如何缓存HTTP POST响应?

我想为POST请求创建一个可缓存的HTTP响应.

我的实际实现响应POST请求的以下内容:

HTTP/1.1 201 Created
Expires: Sat, 03 Oct 2020 15:33:00 GMT
Cache-Control: private,max-age=315360000,no-transform
Content-Type: application/x-www-form-urlencoded; charset=UTF-8
Content-Length: 9
ETag: 2120507660800737950
Last-Modified: Wed, 06 Oct 2010 15:33:00 GMT

.........
Run Code Online (Sandbox Code Playgroud)

但看起来浏览器(Safari,Firefox测试)并没有缓存响应.

HTTP RFC中,相应的部分说:

除非响应包含适当的Cache-Control或Expires头字段,否则对此方法的响应不可缓存.但是,303(请参阅其他)响应可用于指示用户代理检索可缓存资源.

所以我认为它应该被缓存.我知道我可以设置一个会话变量并设置一个cookie并进行303重定向,但我想缓存POST请求的响应.

有没有办法做到这一点?

PS:我从简单开始200 OK,所以它不起作用.

谢谢,

browser post caching http cross-browser

9
推荐指数
1
解决办法
5298
查看次数

如何在端口范围内找到开放端口?

我想在某个范围内找到一个开放的本地端口.

如何在不连接端口的情况下以最有效的方式完成此操作.

java networking

8
推荐指数
1
解决办法
6145
查看次数

是否可以在活动管理中进行深度嵌套?

这是我在Active Admin上破坏的第三天.

我有@survey这个has_many :questions和每个问题has_many :answers- 它们实际上是用户可以选择的变种.

但是我仍然不能把它付诸实践,它只是没有创建更深层次的1级:即使表单正常工作,但没有创建任何东西.

ruby-on-rails nested-forms activeadmin

8
推荐指数
1
解决办法
2917
查看次数

哪种组合小型HDFS块最简单?

我正在用Flume收集日志到HDFS.对于测试用例,我有小文件(~300kB),因为日志收集过程是根据实际用途进行缩放的.

有没有简单的方法将这些小文件组合成更接近HDFS块大小(64MB)的较大文件?

hadoop hdfs flume

6
推荐指数
1
解决办法
2018
查看次数

Java中的直接比较器开箱即用

我有一个方法需要一个Comparator参数.我想传递一个Comparator其中做了正常比较和一个反向,其确实在反向比较器.

java.util.Collections提供一个reverseOrder()这对反向比较有好处,但我找不到任何正常的Comparator.

我想到的唯一解决方案是Collections.reverseOrder(Collections.reverseOrder()).但我不喜欢它因为调用里面的双重方法.

当然我可以这样写NormalComparator:

public class NormalComparator<T extends Comparable> implements Comparator<T> {
    public int compare(T o1, T o2) {
        return o1.compareTo(o2);
    }
}
Run Code Online (Sandbox Code Playgroud)

但我真的很惊讶Java没有开箱即用的解决方案.

java collections comparable comparator guava

5
推荐指数
1
解决办法
803
查看次数

Guice ThrowingProvider问题

根据Guice 的ThrowingProvider文档,我有以下界面:

public interface IConfigurableProvider<T> extends ThrowingProvider<T, ConfigException> {}
Run Code Online (Sandbox Code Playgroud)

我有多个实现此接口的类,假设我有以下内容:

public class SomethingProvider extends ConfiguredProvider implements IConfigurableProvider<Something> {}
Run Code Online (Sandbox Code Playgroud)

当然这个类实现了必要的方法:

public Something get() throws ConfigException { /* ... */ }
Run Code Online (Sandbox Code Playgroud)

在我的模块中,我有以下代码 MyModule.java

ThrowingProviderBinder.create(binder())
    .bind(IConfigurableProvider.class, Something.class)
    .to(SomethingProvider.class);
Run Code Online (Sandbox Code Playgroud)

但是,当我启动我的应用程序时,产生以下错误:

6) No implementation for com.package.Something was bound.
  while locating com.package.Something
    for parameter 5 at com.package.OtherClass.<init>(OtherClass.java:78)
  at com.package.MyModule.configure(MyModule.java:106)
Run Code Online (Sandbox Code Playgroud)

我真的不知道我应该从哪里开始寻找这个bug.

更新:即使我也设置了范围,它也会提供相同的错误:

ThrowingProviderBinder.create(binder())
    .bind(IConfigurableProvider.class, Something.class)
    .to(SomethingProvider.class)
    .in(Singleton.class);
Run Code Online (Sandbox Code Playgroud)

java provider dependency-injection guice

5
推荐指数
1
解决办法
353
查看次数

Javascript对象字面量

这是我的对象文字:

var obj = {key1: value1};
Run Code Online (Sandbox Code Playgroud)

我该如何添加:

{key1: value1,value2,value3}
Run Code Online (Sandbox Code Playgroud)

对象?

javascript object

5
推荐指数
1
解决办法
679
查看次数

Jetty SslConnector的弃用方法

SslConnector.java接口已在最新的Jetty 7.3.1.v20110307中更改.

几乎所有方法都被标记为已弃用,但未提及替换接口或要使用的方法.

我已经检查了jetty-usersjetty-dev邮件列表,但没有运气.

有没有人知道将来如何更改代码?

提前致谢!

java ssl jetty deprecated

4
推荐指数
1
解决办法
2341
查看次数

杰克逊 - 将java对象转换为json - 需要所有关键键为大写

需要你的帮助将java对象转换为json.当前json结果显示小写字母的所有键,我需要它是大写.

ObjectMapper mapper = new ObjectMapper();
Writer strWriter = new StringWriter();
mapper.writeValue(strWriter, obj);
String jsonString= strWriter.toString();
Run Code Online (Sandbox Code Playgroud)

结果是

[{"flags":"1","name":"Peter","location":"London","startDate":"2012-01-06 00:00"}]
Run Code Online (Sandbox Code Playgroud)

但我想要这样的结果(所有关键键值应该是大写的):

[{"FLAGS":"YU","NAME":"Peter","LOCATION":"London","STARTDATE":"2012-01-06 00:00"}]
Run Code Online (Sandbox Code Playgroud)

并且也可以这样(大写的关键第一个字母):

[{"Flags":"1","Name":"Peter","Location":"London","StartDate":"2012-01-06 00:00"}]
Run Code Online (Sandbox Code Playgroud)

谁可以帮我这个事.

提前致谢.

java json object jackson uppercase

4
推荐指数
1
解决办法
9786
查看次数

预期的标识符,字符串或数字

我有一个像这样的对象;

var defaults = {
        id: 'ActionSlider',
        element: '',
        closeBtnWidth: 55,
        panelWidth: 320,
        class: '',
        css: {},
        create: function() {},
    },
Run Code Online (Sandbox Code Playgroud)

当我在IE8标准中运行我的页面时,它给我以下错误;

SCRIPT1028:预期的标识符,字符串或数字

并指向该行:class:'',

任何人都可以告诉我为什么我不能用这个IE?这是一个保留的词还是什么?

javascript internet-explorer

3
推荐指数
1
解决办法
2180
查看次数