小编geo*_*eon的帖子

避免使用REST重复POST

我一直在REST API中使用POST来创建对象.每隔一段时间,服务器就会创建一个对象,但客户端会在收到201 Created响应之前断开连接.客户端只能看到失败的POST请求,稍后再次尝试,服务器会愉快地创建一个重复的对象......

其他人一定有这个问题吧?但我谷歌周围,每个人似乎都忽略了它.

我有2个解决方案:

A)改为使用PUT,并在客户端上创建(GU)ID.

B)向客户端上创建的所有对象添加GUID,并让服务器强制执行UNIQUE-ness.

A与现有框架不匹配,B感觉就像是黑客.在现实世界中,其他人如何解决这个问题?

编辑:

使用Backbone.js,您可以在客户端上创建对象时将GUID设置为id.保存后,Backbone将执行PUT请求.让你的REST后端处理PUT到不存在的id,然后你就设置了.

rest post atomicity

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

不兼容的指针类型将'Class'发送到'id <UIActionSheetDelegate>'类型的参数

我收到警告不兼容的指针类型在下面的"delegate:self"行中将'Class'发送到'id'类型的参数:

    + (SHKActionSheet *)actionSheetForType:(SHKShareType)type
{
    SHKActionSheet *as = [[SHKActionSheet alloc] initWithTitle:SHKLocalizedString(@"Share")
                                                      delegate:self
                                             cancelButtonTitle:nil
                                        destructiveButtonTitle:nil
                                             otherButtonTitles:nil];
    as.item = [[[SHKItem alloc] init] autorelease];
    as.item.shareType = type;
Run Code Online (Sandbox Code Playgroud)

此警告在ShareKit中,如果有人知道如何解决它,请告诉我!

warnings incompatibility ios

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

HAPI JS节点js创建https服务器

如何使用相同的路由创建hapi httphttps服务器,同时监听80和443?

(我需要一个服务器,它应该在http和https上使用完全相同的API运行)

node.js hapijs

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

如何为Typescript打字编写负面测试?

我为Javascript项目的Typescript类型编写了一些测试用例.

积极的测试很简单; 只需输入一堆代码,它就应该编译.像这样:https://github.com/geon/reselect/blob/d5b46b80a28b08ceebc1f19e4300630a0dea751a/test/typings/should_compile/index.ts

测试是有点棘手.但有些事是不能编译,但我不能在同一个文件多次测试了,因为编译将只要一个测试用例是无效的失败.所以这不起作用:https://github.com/geon/reselect/blob/d5b46b80a28b08ceebc1f19e4300630a0dea751a/test/typings/should_not_compile/index.ts

如果所有文件都无法编译,我如何确保测试通过?

测试应该可以由Travis CI运行.(我没有经验.对不起.)

unit-testing travis-ci typescript

5
推荐指数
0
解决办法
127
查看次数