Giter VIP home page Giter VIP logo

sky's Introduction

speed sky

按用户id显示用户添加的内容。支持get和post两种模式添加内容
用户目录
http://ss.trains629.com/userid
访问用户目录,将显示用户最后添加的内容,
主要是为方便,用户在多设备和电脑见传递数据。
比如我在电脑上访问一个网站,希望也能在手机上访问次网站,
会采用什么方式去传递这个地址呢?
采用其他的软件进行同步,比如我google的账号通过地址收藏去同步,
但是这个方法会受到账号屏蔽的影响!
采用QQ的微云的剪贴板同步,这个前提是需要安装桌面端和手机端的两个软件,
如果已经安装完成倒是无所谓,但是没有安装,而且还需要关联账号。
等等这些,有什么简单的办法吗?
只需要在浏览器中处理,无需登录验证,至少在查看的时候,不需要登录。
添加需要,毕竟需要控制添加。又能方便查找和打开地址,
只需要处理这些问题,应该就能满足我的基本需要!

准备通过一个用户id去访问地址,在纯查看的情况下,不需要输入密码和验证,
只需要打开指定的页面就可以看到需要的内容。同时还能方便的添加内容

所有准备通过用户id去作为目录节点,添加几个基本的操作命令
查看,添加 (删除,查看历史和修改内容,应该暂时用不到,
不过数据应该按条保存下来,通过id去保存,准备采用nosql的数据库,
一般情况下,只显示最后一条数据,只有少数情况才需要处理列表或删除之类)
在指定的用户页面只能看到最后的数据。

##将会有两组数据## 1.用户数据 用户id只能为字母或数字,当添加数据的时候,如果访问的是一个空的用户id,将创建用户id 并插入条目 2.内容数据

http://ss.trains629.com/trains629?+=http://121.com 当数据库中没有trains629这个用户时,将会创建指定的用户,并按指定用户的ID去插入 插入对应的内容

需要几个数据内容:

  • UserCount: 用户id总数,添加一个新的用户id就创建一个用户,默认为0
  • UserList : 用户名数组,默认保存一个空数组
  • userid: 用户id,例如:
    trains629 用户id 保存此用户的id数,由usercount得到,并用这个id去负责添加内容,
    如果以后需要增加用户权限控制,只需要使用这个id去做相关的扩张
  • userid_items: 内容ID列表,保存一个一维数组,用于数据的添加删除以及历史查看
  • userid_itemsCount: 指定用户的总条目数,当执行添加动作时将增加这个数,并用
    增加后的数和内容去插入新的数据,默认为0,对应的key为
  • userid_itemid_context http://121.com
  • userid_itemid_time now

##数据处理##
将会插入两个键值对,一个记录内容,一个记录插入时间
###怎么处理删除和历史查看呢?###
采用一个数组去保存数据记录?当执行添加的时候,读出这个数组,并插入一个数据,
然后将这个数组,在更新回去。当执行删除的时候读出这个数组,删除指定位置的数据,然后再更新回去, 这样就可以支持批量删除。
###修改 修改只需要按id去修改指定内容,更新对应的时间

##数据操作流程 范例地址:http://ss.trains629.com/trains629?add=http://www.123.com ###用户id读取
当服务器接到此请求后,先得到指定的userid,在这里是,trains629,
用此用户id去查看是否存在此键值,将分两种情况处理:

  • 不存在,访问UserCount,如果不存在此key,就插入此key并将值设为0,否者读出此值(创建时直接返回0)
    将这个值自加后更新UserCount,并用此值做为用户id的值插入数据库。然后用这个值去执行内容插入动作
  • 存在的时候, 读去出对应的userid,用这个只去执行插入动作
    ###命令处理 检查url中是否带有相关的命令,比如add,del,list,get,默认按get处理 ####处理get命令 用得到的用户id去读取,userid_itemid_context和userid_items_time 两个key,并将内容显示出来 ###处理add命令 得到add命令对应的内容,这里为http://www.123.com(处理数据读取采用一个函数封装,
    现在先不区分是get还是post)。得到指定的用户id后,用此id去userid_itemsCount中得到条目记录数,
    自加并更新次条目数,用自加后的条目,当前内容,当前时间,分别插入到
    userid_itemid_context 和 userid_itemid_time 中,之后读取出userid_items内的数组,并在数组
    尾部添加此数,并更新回数据库

##代码处理

###数据库操作对象 计划采用leveldb的数据,封装上数据查找,数据读取,计数器自加,更新数组等操作, 这里会分成两个子对象,一个处理用户,一个处理内容数据

sky's People

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.