Tag: ios

如何使用node.JS创build一个基于令牌的login机制?

我正在做一个iOS应用程序,需要我login到我的node.JS基于Web服务器。 任何人都可以指向我的教程,这引发了一些灯光,如何为一个login会话生成唯一的令牌? 我想到的是,通过发布请求获取用户名和密码,validation凭据,然后生成时间戳的散列以及用户名和密码,并生成一个validation令牌,并将其发送回客户端进行保存它并进一步使用它。 这个会话文档将会话数据和session_id是唯一的密钥。

无法在iOS Facebook SDK中将access_tokenvalidation为PassportJS

我正在尝试使用Facebook iOS sdk与PassportJS(服务器是NodeJS)我成功地设法在我的iOS应用程序上使用Facebooklogin。 接下来我要做的是将访问令牌移交给服务器,并从那里进行validation。 不幸的是它根本不起作用。 怪异的部分是,我的网站,它工作正常。 我只是使用callbackURL将令牌发布到服务器。 所以在代码中,Facebooklogin后会发生什么(工作) /* * Callback for session changes. */ – (void)sessionStateChanged:(FBSession *)session state:(FBSessionState) state error:(NSError *)error { switch (state) { case FBSessionStateOpen: if (!error) { // We have a valid session NSString *token = session.accessTokenData.accessToken; NSLog(@"User session found: %@", token); [[NSNotificationCenter defaultCenter] postNotificationName:nGotFacebookSession object:nil userInfo:@{ @"token": token }]; } […]

多个REST风格的Web服务调用与MySQL联接

我目前正在使用node.js为我当前的iPhone应用程序构build一个RESTful Web服务。 目前,该系统工作如下: 客户端向node.js服务器发出请求,服务器做适当的计算和MySQL查询,并返回数据 客户端的反应器处理响应并更新UI 有一件事我一直在想的是对我的服务器进行多个API调用的差异(在性能和最佳实践方面)与一个在MySQL数据库中执行多个连接语句的调用,然后返回一个构造的对象。 例如:可以说我正在加载一个用户configuration文件显示在用户界面。 用户具有个人资料图片,基本信息和新闻提要项目。 使用选项一,我会做如下: 向服务器发出一个getUser请求,这将在数据库中执行一个查询,如下所示: Select * from user join user_info on user.user_id=user_info.user_id left join user_profile_picture on user_profile_picture.user_id=user.user_id 。 服务器然后将返回一个构造的用户对象,其中包含来自每个表的信息 客户端等待服务器的响应并立即更新所有内容 选项2将是: 向服务器发出3个asynchronous请求: 的getUser getUserInfo getUserProfile 每当收到任何请求时,UI都会更新 所以给了这两个选项,我想知道哪个提供更好的可伸缩性。 目前,我正在考虑select2,原因如下: 每个asynchronous请求将比选项a中的查询更快,从而更快地向用户显示某些内容 我也整合了Memecache,我觉得这3个独立的调用将更容易caching特定的结果(例如,不caching用户configuration文件,而是cachinguser,user_info和user_profile_picture)。 任何想法或经验?

websockets和iOS中的实时更新

我正在学习express.js和socket.io来制作实时的Web应用程序。 从我可以收集的,socket.io(和websockets)在浏览器中可用。 所以它可以监听服务器发出的事件。 对于我的用例,客户端是一个iOS应用程序而不是浏览器,我打算使用express + socket作为实时api,将更新推送到客户端。 由于iOS没有websockets,我该怎么做呢? 人们目前如何将更新推送到这些设备?

端口号的HTTPSurl在iOS上不可用

我在包含端口号的HTTPS URL上发送一个简单的GET请求。 该url看起来像这样 https://example.com:8080/v1/base 这完美的Android和任何浏览器..甚至curl。 但是,我在iOS上得到这个错误。 如果我从上面的URL中删除端口号,这工作得很好! 错误:错误域= NSURLErrorDomain代码= -1202“此服务器的证书无效,您可能正在连接假装为”example.com“的服务器,这可能会使您的机密信息处于危险之中。 UserInfo = 0xa694c50 {NSErrorFailingURLStringKey = https://example.com:8080/v1/base,NSLocalizedRecoverySuggestion =你想连接到服务器呢,NSErrorFailingURLKey = https://example.com:8080/api/v1/base ,NSLocalizedDescription =这个服务器的证书是无效的。 您可能正在连接到假装为“example.com”的服务器,这可能会使您的机密信息处于危险之中,NSUnderlyingError = 0xa2410a0“此服务器的证书无效。您可能正在连接到假装是“example.com”,这可能会使您的机密信息处于危险之中。“,NSURLErrorFailingURLPeerTrustErrorKey =} SSL证书由DigiCert颁发。 服务器后端是节点v0.10.15和iOS SDK v6.1 任何想法,我在这里失踪?

iOSselect哪种服务器端语言,以及哪个服务器后端在处理套接字连接时是首选的

我正在一个iOS应用程序,它会使用一些实时消息,因为我看到它,我有2个选项在这里: 套接字连接到服务器,所以它可以在出现消息时作出响应,或不断查询数据库以进行更新。 唯一的要求是,我写它在ObjC而不是Appcelerator或phonegap。 我想知道你认为我应该select哪个后端提供程序,以及我应该使用哪种语言作为后端。 我已经做了相当多的研究,我自己,我已经尝试了运行PHP的自定义服务器解决scheme,我也试过parsing,我真的很喜欢,但价格是可怕的,当扩展。 我也听说很多有关谷歌App Engine的伟大的事情,虽然我还没有尝试过,我已经尝试过他们的移动kickstarter,这似乎是不好的,考虑到他们的示例项目有多个错误已经坐在他们的GIT几个月没有得到固定。 无论如何,我问的是,我应该写我自己的自定义后端? 或者我应该使用谷歌应用程序引擎/parsing或其他? 我应该使用Node.js,PHP还是Python? 我想节省尽可能多的时间,我有很多与symfony,PHP框架的经验,我有phyton的小经验。 我对node.js没什么经验,不介意学习它。 谢谢你的时间:)

如何使用node.js获取图片上传进度,并在我的iPhone应用程序中使用它

我不知道如何使用node.js获取当前的上传进度,也不知道如何将进度值发送到我的iPhone客户端应用程序。 我目前有这样的代码,但它只保存图像文件,并保存图像文件名到数据库。 app.post('/event', function (req, res) { fs.readFile(req.files.displayImage.path, function (err, data) { var newPath = __dirname + '/uploads/' + req.files.displayImage.name; fs.writeFile(newPath, data, function (err) { if (!err) { var pic = req.files.displayImage.name; connection.query('INSERT INTO Event SET ?', {pic: pic}, function (error, result) { if (error) { res.send(error, 400); } else { res.send({insertId: result.insertId}, 200); } […]

如何在我的Node.js服务器上validationGKLocalPlayer

在Apple的Doc,generateIdentityVerificationSignatureWithCompletionHandler中 ,将连接成数据缓冲区4个参数,其中之一是“ Big-Endian UInt-64格式的时间戳参数”,然后生成一个SHA-1哈希值进行validation。 有没有人在Node.js / Javascript中成功完成这个任务? 我遇到的主要问题是Javascript / Node.js似乎没有任何支持64位无符号的大端整数; 它似乎最大在32位,无符号。 PS:我知道那里有以下相关的问题,但他们没有解决这个特定的JavaScript问题。 如何在我的“第三方服务器”上validationGKLocalPlayer? :解决scheme是针对ruby,python和obj-c; 所有的本地支持生成时间戳的64位BEhex。 如何从第三方node.js服务器validationGame Center用户 :代码依赖于客户端向服务器发送一个已经以hexstringforms的时间戳(请参见json.hexTimestamp ,大约在22) 它甚至有可能可靠地创build一个64位无符号大端… 在JavaScript中的hex表示forms? 我正在考虑通过Node.js执行ruby / python作为可能的解决方法。

如何在服务器上configurationsocket io以从ios套接字获取应答(SocketIOCallback)

我正在用node.js和socket.io在ios上开发一个聊天应用程序。 我使用SocketIOCallback发送确认。 但是我没有得到任何确认server.js。 这是我用来发送确认的代码 SocketIOCallback cb = ^(id argsData) { NSDictionary *response = argsData; // do something with response NSLog(@"ack arrived: %@", response); }; [socketIO sendEvent:@"message" withData:values andAcknowledge:cb]; server.js socket.on('message', function(postMessage,callback){ console.log(callback); //callback('okkk'); console.log('username–>'+ socket.username); console.log('ID–>'+ socket.id); io.sockets.emit("pvt",socket.username,postMessage+socket.username); io.sockets.emit("pvt",socket.username,postMessage+socket.username); }); 当打印console.log(callback)在terminal显示未知 如何configurationserver.js从ios应用程序获取这些确认。 或者如何将确认从服务器发送到ios应用程序,反之亦然请帮助我解决这些问题的例子。 提前致谢

按下安装后,iOSconfiguration文件返回什么types的响应

在设置configuration文件(从mobileconfig)期间,如果在苹果设备上按“安装”,返回什么? 它是XML,后值等? 我试图通过节点js提取设备的UDID等。