我一直在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,然后你就设置了.
我收到警告不兼容的指针类型在下面的"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中,如果有人知道如何解决它,请告诉我!
如何使用相同的路由创建hapi http
和https
服务器,同时监听80和443?
(我需要一个服务器,它应该在http和https上使用完全相同的API运行)
我为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运行.(我没有经验.对不起.)
atomicity ×1
hapijs ×1
ios ×1
node.js ×1
post ×1
rest ×1
travis-ci ×1
typescript ×1
unit-testing ×1
warnings ×1