首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何在应用程序中实现“用户”功能?

如何在应用程序中实现“用户”功能?
EN

Stack Overflow用户
提问于 2014-02-03 10:15:40
回答 1查看 91关注 0票数 0

这可能是重复。然而,其他的答案并没有帮助我。那么,就这样吧。

我正在开发一个应用程序,我们需要在其中添加“用户”。我们将允许人们在Facebook、Twitter和LinkedIn上注册。我以前使用过这些API,但是从未在全球范围内将它们结合在一起。

如何维护和管理这些将使用不同服务登录的用户。我对如何将它们存储在数据库中感到困惑,是需要为每个不同的社会服务提供不同的表,还是有一种方法可以实现将所有用户集中在一个地方的表。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-02-03 10:50:38

据我所知,您正在询问如何通过不同的社会服务来管理、存储和验证登录应用程序的用户。

这就是我们通过与之合作的各种项目来实现它的方式。从你提供的服务列表来看,我们只和twitter和facebook合作过,所以我只能说这一点。

设置:

  1. 我们有一个iOS应用程序与之通信的web服务,例如当iOS应用程序需要为用户登录发出请求时,服务器将获取试图登录的用户详细信息,并返回一个响应,然后该应用程序将做必要的事情。
  2. 我们在服务器上存储了一个数据库,其中包含一个user表,用于验证用户。

尽管如此,你需要了解大多数社会服务之间的共同之处,或者至少要知道这些社会服务用来唯一识别用户的属性是什么。在这种情况下,他们都使用电子邮件来识别用户。

您会发现,当您的应用程序与这些不同的app接口时,它们喜欢使用用于唯一登录会话的登录会话密钥。

因此,在您的数据库中,您将存储您想要保存的用户的任何细节,但要知道您至少需要存储用户名、密码(加密)、电子邮件(用于标识、唯一列)和login_session_key。

只需再次检查linkedIn是否有类似于用户登录该方法时创建的会话键的内容。Facebook和twitter都有。至少向服务器发送所需的4个主要数据属性(用户名、密码、电子邮件、会话),然后遵循以下方法:

新用户

  • 如果新用户尝试登录,服务器首先检查数据库中甚至存在的电子邮件,如果没有,则发送回复通知用户该用户不存在;然后应用程序会将它们带到注册屏幕上。
  • 如果用户在注册表页面中,请保存您想要存储的所有详细信息,包括用户名、密码和电子邮件。

成员

  • 如果用户在服务器端登录电子邮件,那么它是一个现有用户,所以如果密码匹配,只需更新从应用程序登录时发送的会话密钥(在某些应用程序中,这些会话密钥在应用程序的生命周期内使用,每个请求发送相同的会话密钥,如果会话密钥在应用程序交互过程中任何时候不匹配,则可以得出结论,用户可能已在其他设备上登录。
  • 如果密码不匹配,则返回适当的消息。

真的就是这样。我们可以将所有的facebook和twitter用户存储在一个表中。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21534600

复制
相关文章
【npm】npm install vs. npm update
工作中会经常用到npm install或是npm update,那这两个命令有什么区别呢
用户2845596
2021/01/21
2.3K0
VS Code中无法识别npm命令
今天在VS Code中执行npm install命令时报了“'npm' 不是内部或外部命令,也不是可运行的程序或批处理文件”的错误。
跟着阿笨一起玩NET
2019/12/24
12.1K0
VS Code中无法识别npm命令
APM vs NPM
APM:Application Performance Monitoring 的简称,即应用性能监控。NPM:Network Performance Monitoring 的简称,即网络性能监控。
东风微鸣
2022/04/22
2.1K0
VS扩展CodeMaid代码整理插件
本文章转载:http://www.cnblogs.com/wintersun/p/3577039.html
跟着阿笨一起玩NET
2018/09/19
3.1K0
VS扩展CodeMaid代码整理插件
从零开发一款基于 webview 的 vscode 扩展
在团队降本提效的基建中,洛竹开发了一款 vscode 插件,第一版我使用的是 vscode 内置 UI,虽说也能用,但是用户体验欠佳。由于 vscode 内置 UI 不够灵活,一番调研后我决定使用 webview 重构。
用户1250838
2021/09/18
4.9K0
从零开发一款基于 webview 的 vscode 扩展
安卓开发_WebView如何在Fragment中使用
之前学习了如何在activity中使用WebView控件来显示网页。 在我的实际开发中,有需要在Fragment中用到WebView控件的,那么就百度学习了一下 其实很简单,但是当然不是和在Activity中使用的方法一样 具体看代码 1 package com.example.qunxiong; 2 3 import android.os.Bundle; 4 import android.support.v4.app.Fragment; 5 import android.view.Layout
听着music睡
2018/05/18
3K0
使用typescript开发angular模块(发布npm包)
创建模块 初始化package.json文件 执行命名 npm init -y 会自动生成package.json文件如下,name默认为文件夹名称 { "name": "MZC-Ng-Api", "version": "1.0.0", "description": "", "main": "index.js", "scripts": { "test": "echo \"Error: no test specified\" && exit 1" }, "keywords"
易兒善
2018/08/21
1.3K0
使用typescript开发angular模块(发布npm包)
npm包–rimraf[通俗易懂]
rimraf 包的作用:以包的形式包装rm -rf命令,用来删除文件和文件夹的,不管文件夹是否为空,都可删除
全栈程序员站长
2022/11/17
1.1K0
发布npm包
Npm包管理器不用多讲,用过三大框架的应该都用过。今天讲一下怎么发布自己的npm包。
wade
2020/04/24
6380
引入gitlab仓库代码到npm包的教程
随着人类地发展,社会地进步,计算机技术地更新迭代,每一片码海里都有它宝贵的财富,每一座码山里都有着各自的秘密。怎么守住财富,隐藏一些秘密,成了一些开发人员所关心的事情。
江涛学编程
2022/07/30
9460
引入gitlab仓库代码到npm包的教程
Import VS From导入
模块是变量名得包,就是所谓得命名空间,而在包里面得变量名称为属性,属性简单来说就是绑定在特定对象(模块)上得变量名.
云深无际
2020/11/03
5980
Import VS From导入
【工具】发布NPM包
另外:后面会再总结一个系列,就是腾讯项目用到的技术点,有好多好多,可以供大家学习参考,让我们一起进步
神仙朱
2020/07/10
1K0
规范升级 NPM 包
在日常工作中,当组件跨项目使用时,我们往往会选择把组件抽成 npm 包。那么在 npm 开发以及发布的过程中有什么需要注意的事项吗?本文将从我自己的角度,来为大家介绍一下我认为的一些需要大家注意的点。
政采云前端团队
2022/12/01
8140
规范升级 NPM 包
nodejs常用npm包
用户1141560
2017/12/26
2.4K0
如何发布npm包
1、npm是什么? NPM (node package manager),通常称为node包管理器。顾名思义,它的主要功能就是管理node包,包括:安装、卸载、更新、查看、搜索、发布等。 npm 可以让 JavaScript 开发者在共享代码、复用代码以及更新共享的代码上更加方便。 当一个 JavaScript 开发者为了解决某个问题而编写了一些代码并将其共享出来的话,其他的开发者能够在自己的应用程序中复用这些代码,npm 让这些事情变得简单。 如果你使用了其他开发者开发的代码,你就可以很方便地使用 npm
小胖
2018/06/27
1.3K0
「译」提升 Web 开发效率的 VS Code 扩展
在我们开始之前,先看看你能否回答这个问题:Visual studio Code 和 Visual Studio 的区别是什么?
Chor
2019/11/08
7990
npm 更新package.json中依赖包版本
NPM可以使用npm-check-updates库更新版本 1、安装: cnpm install -g npm-check-updates 2、使用: ncu --timeout=10000000 -u 指定--timeout参数防止超时 更新全部到最新版本: cnpm install 为了防止版本冲突,可以先讲node_modules删掉
JadePeng
2020/05/29
1.7K0
如何使用npm发布自己的npm包
一. 创建 在npm的官网上注册一个账号,https://www.npmjs.com/ 1:在本地通过npm init 初始化一个项目,并建一个index.js 文件,因为index.js为默认进入的文件,如下: 2:在本地将该创建的项目打开,并在index.js编写想要写的文件(这里简单写一个排序),如下: 3:接下来通过npm login来登录你之前创建的npm账号,如下: 4:npm pubish 二. 使用 npm install 包名 三. 版本更新 更改版本号 重新发布
小吕
2022/09/26
3.8K0
如何使用npm发布自己的npm包
Vscode笔记-24款插件
首先当然是一些语言支持的插件,这个大家根据自己的需要安装就好了。平时编写什么语言,就安装什么语言的插件。
小城故事
2023/03/10
10.8K0
Vscode笔记-24款插件
如何使用npm发布自己的npm包
一. 创建 在npm的官网上注册一个账号,https://www.npmjs.com/ 1:在本地通过npm init 初始化一个项目,并建一个index.js 文件,因为index.js为默认进入的文件,如下: image-ab2ede5fb9d14ab8bb059eb63257c67c.png 2:在本地将该创建的项目打开,并在index.js编写想要写的文件(这里简单写一个排序),如下: image-1dc4644452b844869943897ce6cfd223.png 3:接下来通过npm
小吕
2022/06/16
1.5K0
如何使用npm发布自己的npm包

相似问题

如何在Chrome扩展中导入npm包

228

Shopify主题应用扩展导入npm包

19

在VS代码中,如何停靠Webview开发工具?

11

如何在开发中测试composer包,如symfony包

18

寻找类似于VS代码远程开发扩展包的IntelliJ远程开发体验

11
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文