小编Ros*_*oss的帖子

什么是监视REST资源以进行更改的RESTful方法?

如果有一个REST资源我想要监视来自其他客户端的更改或修改,那么最好的(也是最RESTful)方式是什么?

我这样做的一个想法是提供特定的资源来保持连接打开,而不是在资源不存在的情况下立即返回.例如,给定资源:

/game/17/playerToMove
Run Code Online (Sandbox Code Playgroud)

这个资源上的"GET"可能会告诉我轮到我的对手了.我可能会注意到移动号码(比如5)并试图检索下一步行动,而不是不断地轮询这个资源以找出轮到我移动的时间:

/game/17/move/5
Run Code Online (Sandbox Code Playgroud)

在"正常"REST模型中,似乎对此URL的GET请求将返回404(未找到)错误.但是,如果相反,服务器保持连接打开,直到我的对手发挥他的移动,即:

PUT /game/17/move/5
Run Code Online (Sandbox Code Playgroud)

然后服务器可以将我的对手PUT的内容返回到该资源.这将为我提供我需要的数据,以及一种通知我的对手何时移动而不需要轮询.

这种方案是RESTful吗?或者它违反了某种REST原则?

rest polling long-polling

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

如何将查询参数添加到GetMethod(使用Java commons-httpclient)?

使用Apache的commons-httpclient for Java,将查询参数添加到GetMethod实例的最佳方法是什么?如果我使用PostMethod,它非常简单:

PostMethod method = new PostMethod();
method.addParameter("key", "value");
Run Code Online (Sandbox Code Playgroud)

但是,GetMethod没有"addParameter"方法.我发现这有效:

GetMethod method = new GetMethod("http://www.example.com/page");
method.setQueryString(new NameValuePair[] {
    new NameValuePair("key", "value")
});
Run Code Online (Sandbox Code Playgroud)

但是,我见过的大多数示例都是将参数直接硬编码到URL中,例如:

GetMethod method = new GetMethod("http://www.example.com/page?key=value");
Run Code Online (Sandbox Code Playgroud)

或者对查询字符串进行硬编码,例如:

GetMethod method = new GetMethod("http://www.example.com/page");
method.setQueryString("?key=value");
Run Code Online (Sandbox Code Playgroud)

这些模式中的一种是首选吗?为什么PostMethod和GetMethod之间的API差异?那些用于其他HttpMethodParams方法的是什么?

java httpclient getmethod

32
推荐指数
3
解决办法
7万
查看次数

如何将HTML文本字段集中在iPhone上(导致键盘出现)?

我正在编写一个iPhone网络应用程序,我想在页面加载时自动聚焦文本字段,然后调出键盘.通常的Javascript:

input.focus();
Run Code Online (Sandbox Code Playgroud)

似乎不起作用.有任何想法吗?

html javascript iphone

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

使用Java中的sqlite获取最后插入的id的最佳方法是什么?

使用Java中的sqlite获取最后插入的id的最佳方法是什么?谷歌给了我不同的答案 - 有人说选择last-insert-rowid; 其他人说call statement.getGeneratedKeys().什么是最好的路线?(我只是想返回id,而不是用于其他插入或任何东西.)

java sqlite jdbc

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

什么RESTful API将用于回合制游戏服务器?

您如何将回合制游戏服务器建模为RESTful API?例如,国际象棋服务器,您可以在其中与同一API的另一个客户端进行国际象棋游戏.您需要某种方式来请求和与其他客户协商游戏,以及某种方式来玩游戏的各个动作.

这是REST(RESTful)API的良好候选者吗?或者这应该以不同的方式建模?

rest chess

10
推荐指数
1
解决办法
9351
查看次数

在Java中一次读取两行文本文件的最佳方法是什么?

BufferedReader in;

String line;
while ((line = in.readLine() != null) {
    processor.doStuffWith(line);
}
Run Code Online (Sandbox Code Playgroud)

这就是我逐行处理文件的方法.但是,在这种情况下,我想在每次迭代中向处理器发送行文本.(我正在处理的文本文件本质上将一条记录存储在两行上,所以我每次都会向处理器发送一条记录.)

在Java中这样做的最佳方法是什么?

java text-files fileparsing

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