CN105471991A - 电子商务系统的用户管理方法 - Google Patents
电子商务系统的用户管理方法 Download PDFInfo
- Publication number
- CN105471991A CN105471991A CN201510821344.3A CN201510821344A CN105471991A CN 105471991 A CN105471991 A CN 105471991A CN 201510821344 A CN201510821344 A CN 201510821344A CN 105471991 A CN105471991 A CN 105471991A
- Authority
- CN
- China
- Prior art keywords
- user
- data
- webpage
- browser
- logining
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/146—Markers for unambiguous identification of a particular session, e.g. session cookie or URL-encoding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/143—Termination or inactivation of sessions, e.g. event-controlled end of session
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
Abstract
一种电子商务系统的用户管理方法,是用来精确掌握登入使用者现况,其主要是在使用者成功登入后,即可将该登入用户的信息及登入时间记录在内存中,此时浏览器必须每隔固定时间将目前浏览器的状态送回服务端,以告知服务器目前该浏览器仍然上线中,用以识别出不正常浏览器的中止的状况,同时为了克服无联机的工作状态,以致服务器无法得知浏览器的状况,故在浏览器端设置处理关闭浏览器及网页转向的事件处理机制,当发生这些事件时即发送注销的讯息以通知服务器,将该使用者注销,用以正确记录及掌握各个用户的现况。
Description
技术领域
本发明是提供一种电子商务系统的用户管理方法,特别指一种利用Ajax技术定期回送用户信息,以精确掌握登入使用者现况的管理方法。
背景技术
全球信息网技术是现今电子商务系统所使用的主要技术,其特征在于包含许多复杂的作业机制,用来确保电子商务的安全进行。例如,用户登入及管理在电子商务系统中是一个常用而且重要的功能,但在一般的电子商务系统中受限在HTTP(HyperTextTransferProtocol)协议的无状态式(state1ess)及无连接式(connection1ess)的工作模式的特性,用户登入及管理的功能无法与一般WindowsBased的程序(即一般的窗口程序)的用户登入管理功能相比拟。
虽然现在AAA(Authentication,Authorization,Account)协定如RADIUS,TACACS及HostAPD可用以管理使用者账号与帐务,但其主要为存取点存取网络资源的管理与控制的作用,无法整合到网页内部,也因此无法提供给网页设计时更多有价值性的运用,如在允许同一账号可多重登入的情况下,在网页上实时显示可用的连接时间、在网页上实时显示所有用户的状态(如登入、注销或断线)等与网页信息整合的处理方式。
目前使用的技术通常以服务端的Session及网站全局对象Application来记录用户的信息,其主要做法为当使用者成功登入时,将该用户的信息记录在Session物件中,待用户按下注销按钮再从Session对象中移除该用户。但为避免Server内存被大量耗用在记录使用者信息上,通常都会以SessionTimeout的方式也即设定无动作期间,当该浏览器对该网页达到该期间以上的时间无动作即自动将使用者注销,因此对在登入后未注销前直接关闭浏览器或是直接在浏览器的网址列输入新网址进而改变浏览的网址的使用者,前述的技术便无法精确地用来管理使用者。
总括前述技术其衍生的缺点为:
(1)无法确切掌握使用者的状态。
(2)无法精确地记录上线的用户及其人数。
(3)自动注销使用者,使得使用者常常要重新登入,造成使用上的不便。
(4)自动注销使用者,同时也让使用者已输入而尚未送出的数据丢失,必须重新输入。
发明内容
本发明的主要目的即在于提供一种电子商务系统的用户管理方法,可用来精确掌握登入使用者现况,提供已登入的使用者数、同一账户使用者登入数、登入联机时间及可用连接时间等信息,以作为管控使用者的依据,并可进一步提供为个别使用者帐务(Accounting)计算的资讯。
本发明的另一目的即在于提供一种电子商务系统的用户管理方法,其同时提供在全球信息网的工作环境下,浏览器端具备数据复原(UnDo)的功能,以提升全球信息网环境数据输入的方便性。
可达成前述目的的一种电子商务系统的用户管理方法,主要是在于下列时机点上进行必要的管控处理,以完成可精确掌握使用者状况的使用者管理方法,包括:
使用者登入时:当使用者登入时验证成功后必须将该用户数据记录下来。
开始执行网页:用以判断使用者是否已登入或使用者是否具备足够的权限以执行这个网页。
定期回送:已登入使用者的浏览器,必须通过网页请求的方式定期回送到服务端,以定期回送该使用者仍在线的讯息给服务器,同时更新其存活时间,让服务器知道其仍然上线中。定期回送的数据可以Ajax完成。
使用者注销:已登入用户相关的登入资料删除的处理。
针对本发明说明书中所使用到的相关名词做解释及说明如下:
Application物件:是指全球信息网服务器(WebServer)软件所设置,可供经由该服务器所服务的网页皆可按自行命名的键值将数据储存在该物件,并可依相同的键值来取出、修改或删除该笔数据。其存取只要为经由该服务器所服务的网页,任意何的网页联机皆可修改任意键值所对应的数据,因此,可说是全局性对象,可供不同使用者的不同网页间彼此做数据的交流。Session物件:是指全球信息网服务器(WebServer)软件所设置,可供经由该服务器所服务的网页可按自行命名的键值将数据储存在该物件,并可依相同的键值来取出、修改或删除该笔数据。但其存取与Application对象主要的不同点在于每一个浏览器个体与WebServer连线后会各自建立各自的Session,因此,同部电脑所执行的两个浏览器个体,即使两个浏览器个体开启相同网站的网页,两个浏览器所存取的Session对象是不相同的,但同浏览器在同网站即使浏览的网页不相同,其Session是相同的。SessionID:前述的每一个浏览器个体与WebServer联机后所各自建立的Session的标识符,不同的Session具有不同的SessionID,而SessionID由网页服务器在建立Session时即自动产生,可用来识别不同的Session联机。
最近存活时间:为记录已登入的用户,其浏览器最近次回报给服务端仍然在于线的时间,用以计算其无动作时间以作为判断使用者是否已断线的依据。
回报周期:为已登入的使用者,其浏览器回报给服务器,任意两次回报的时间间隔。为人为设定的时间。为了不让Session对象因为网页不动作超时(Timeout)而消灭,回报周期应比Session对象超时时间来得短。
断线超时时限:为用以判断是否断线的时限,也即,若无动作时间大在断线超时时限则定义该使用者为断线,但这只是一个设定值,这个值定要比回报周期来得长。
用户数据文件:记录包含用户账号、密码、权限、帐务信息(AccountingInformation)及用户基本数据的一个档案,其也可储存在数据库的表格中。其主要提供用户账号、密码、权限及帐务信息以供登入系统验证其身份用。
已登入使用者数据表:如图4所示,为用以记录所有用户数据的一个表格,至少包括使用者账号、最近存活时间的记录及SessionID,可以储存在内存、档案或数据库等足以让其他需要使用者管理的网页可以共同存取的位置。一般来说存放在内存时大都指存放在Application对象。
历史资料文件:用以记录各不同时间点的数据内容的一个档案,由在数据复原的作业属一种后进先出的堆栈动作,因此,该文件的第笔记录(或第一个数据项)设置为整数的储存空间,以记录堆栈指针,而其他空间则以数据笔数的编号为识别,从0号开始编起,每笔数据报含复数组输入组件的数据,而每组输入组件数据报含输入组件名称及该输入组件的最新内容。Ajax:为AsynchronousJavaScriptAndXML的缩写,为一种可让浏览器进行异步的网页请求的技术,因为它是一种异步的技术,因此,浏览器可在有需要的时候以背景(background)的方式执行网页请求,而不用打断或干扰浏览器前景(foreground)所执行的工作°
前述的问题主要在于浏览器与服务器为无连接式,只有在浏览器提出请求(request)及服务器响应浏览器的请求时浏览器与服务器才会联机,其他状况下则为无联机的状态,浏览器的状况服务器通常无法实时得知,即使在浏览器端的使用者已成功地登入到服务器,但若浏览器端的使用者直接关闭浏览器或是使用者直接更改浏览器的URL将浏览器转向到其他URL并离开原登入页面的网站,服务器仍然毫无所悉,因此,便无法精确地管理使用者登入的信息,针对前述的问题本发明主要在使用者成功登入后,即可将该登入用户的信息及登入时间记录在记忆体中,此时浏览器必须每隔固定时间将目前浏览器的状态送回服务端,以告知服务器目前该浏览器仍然上线中,用以识别出如使用者关闭浏览器或直接更改浏览器的URL将浏览器转向到其他URL等服务器焦法侦测的状况,同时为了克服无连接的工作状态,以致服务器无法得知浏览器的状况,我们在浏览器端设置处理关闭浏览器及网页转向的事件处理机制,当发生此些事件时即发送注销的讯息以通知服务器,将该用户注销,用以正确记录及掌握各个使用者的现况。
附图说明
图1a为用户登入的处理流程图;
图1b为对需登入的网页所进行的处理流程图;
图1c为定期回送的处理流程图;
图1d为用户注销的处理流程;
图1e为另一种定期回送的处理流程图;
图1f为储值预付制度其流程图;
图2为列出已登入在线的所有用户的流程图;
图3为重新整理已登入用户数据表流程图;
图4为已登入使用者数据表的架构图;
图5为具数据复原功能的定期回送处理流程图;
图6为数据复原时的处理流程图;
图7为具数据复原功能的用户注销处理流程图;
图8a、图8b为历史资料文件的架构图。
具体实施方式
本发明是提供一种电子商务系统的用户管理方法。为了设计一个可精确掌握使用者状况的使用者管理机制,我们必须在下列时机点上进行必要的管控处理:
使用者登入时:当使用者登入时验证成功后必须将该用户数据记录下来。
开始执行网页:用以判断使用者是否已登入或使用者是否具备足够的权限以执行这个网页。
定期回送:已登入使用者的浏览器,必须通过网页请求的方式定期回送到服务端,以定期回送该使用者仍在于线的讯息给服务器,同时更新其存活时间,让服务器知道其仍然上线中。定期回送的数据可以Ajax完成。
使用者注销:已登入用户相关的登入资料删除的处理。
图1a到图1d为本发明的第较佳实施例,图中粗线部份为服务端的处理,细线灰底部份为浏览器的工作处理,在本实施例中我们在服务端设置如图4的已登入使用者数据表,其至少包括用户账号以记录该联机登入的使用者、SessionID用以识别不同的联机及最近存活时间的记录用以记录该联机的最近的回报时间。另外在每个用户联机的Session对象中储存该用户联机的使用者账号,用以自动提供使用者账号以识别出不同的使用者联机。在成功登入后将用户的账号记录在已登入使用者数据表,并更新其最近存活时间,然后并储存在该使用者联机的Session对象中。由在网页的所有互动皆在浏览器端进行,也就是,网页的进行时程中,大部份时间都在浏览器端进行,因此,为了不被服务端”遗忘”浏览器端使用者联机的存在,浏览器必须利用Ajax技术,每隔回报周期便以网页请求(HTTPRequest)的方式告知服务器该使用者联机仍然上线使用中。而在具安全性考虑的应用系统中在网页请求后,执行该网页前,通常需先检验该联机的使用者是否已登入或其权限是否足够,我们就可利用检查Session对象的用户账号的有无来判断该使用者联机是否已登入,若无者表示未登入,若有者,表示已登入,但仍须利用其储存在已登入使用者数据表的最近存活时间以判定联机的有效性,计算现在时间减去最近存活时间称的为未回报期间,若未回报期间是否大在断线超时时限则表示该联机为无效联机,反的,则为活跃中的联机。而当使用者注销时,则将已登入使用者数据表中该用户的数据删除,并将该用户联机的Session对象中的使用者账号删除。由在HTTP的无状态性及无连接性,为了避免浏览器端关闭浏览器或离开该已登入的网页应用系统到另其他的网页应用系统的状况,因服务端无法察觉前述的浏览器的动作,而造成浏览器端实际上已注销,但服务端的用户登入数据中仍表示为上线中的不致现象,我们也针对浏览器的关闭及网页转向捕捉前述动作所引发的事件,并设定发生该事件时执行注销的动作,以精确掌握使用者的状况。此外,我们也可使用Cookie的功能来取代Session的功能,也即,原来储存在Session物件的使用者账号,可以改成储存在Cookie对象中,当然其他步骤中需要读取使用者账号时,同时改成读取Cookie对象中用户的名称。
图1a为用户登入的处理流程:
第1a-1步骤:浏览器在使用者输入必要的使用者资讯后,按下登入按钮将数据交付(Submit)传送到服务端。
第1a-2步骤:服务端接收数据后利用用户数据文件进行必要的用户账号与密码的验证作业,若未通过验证则连结到重新登入页面、结束登入作业或进行其他处理,可依网站的设计策略来改变。
第1a-3步骤:在已登入使用者数据表中,新增笔用户记录,并将用户账号及该联机的SessionID储存在该笔记录。
第1a-4步骤:将已登入使用者数据表的最近存活时间更新为现在时间。
第1a-5步骤:取代表使用者(如user)的字词当成键值,将用户账号记录在对应在该键值的Session对象中。
第1a-6步骤:执行其他工作或连结到其他网页。
图1b为对服务端提出网页请求(HTTPRequest)后,若本网页为需登入的网页,则进行该被请求网页的处理流程:
第1b-1步骤首先判断本网页是否为具安全性需登入的网页,若为否,则直接执行网页,毋须检查使用者是否登入。若为是则继续进行下述的工作。
第1b-2步骤:以步骤1a-5所取的键值,检查对应在该键值的Session对象是否记录用户账号,若为否表示该使用者尚未登入,进行未登入的处理或连结到未登入处理的网页。
第1b-3步骤:以SessionID为键值,在已登入使用者数据表中取出该联机的最近存活时间,计算现在时间减去最近存活时间称的为未回报期间,检查未回报期间是否小于等在断线超时时限,若为否,则表示该使用者已断线,进行未登入的处理或连结到未登入处理的网页。
第1b-4步骤:进行网页主要的处理部份(如数据库存取计算或报表的编排等工作)。
第1b-5步骤:待服务端处理完成将网页送到浏览器,以浏览器脚本语言(如javascript或vbscript等)设定捕捉关闭浏览器及浏览器离开该已登入网页的事件(如body标签的onunload事件),并设定发生该些事件时,即执行注销网页的动作。
第1b-6步骤:设定浏览器定期回送给服务端的回送周期。此功能使用浏览器脚本语言(如javascript或vbscript等)计时事件(如setTimeout或setlnterval)即可完成。
第1b-7步骤:执行剧览器必要执行的其他动作。
图1c为定期回送的处理流程:
第1c-1步骤:在第1b-6步骤中已设定了浏览器的回报周期,当回报周期时间到,浏览器即使用Ajax技术送出网页请求到服务端。
第1c-2步骤:以步骤1a-5所取的键值,检查对应在该键值的Session对象是否记录用户账号,若为否表示该使用者尚未登入,进行未登入的处理或连结到未登入处理的网页。
第1c-3步骤:以该联机的SessionID为键值,将已登入使用者数据表中该联机的最近存活时间记录更新为现在时间。
图1d为用户注销的处理流程:
第1d-1步骤:以步骤1a-5所取的键值,检查对应在该键值的Session对象是否记录用户账号,若为否表示该使用者尚未登入,进行未登入的处理或连结到未登入处理的网页。
第1d-2步骤:删除已登入使用者数据表中该用户的数据。
第1d-3步骤:删除Session对象中用户数据的记录。
使用图1c的定期回送机制,当网络暂时性发生问题
使得定期回报讯息无法回送到服务端,进行存活时间更新时,Session对象因为网页不动作超时,使得原来存放在Session对象中的用户账号遗失,当网络恢复畅通时,会被认为该联机已断线,因此必须重新登入,但事实是该联机并未断线且用户并继续在使用中,因而造成使用上的不便。图1e与图1c同为定期回送的处理流程,但其演算法要比图1c来得更加强健,其主要不同点在于图1e的方法不以Session对象是否记录用户账号来判断使用者是否是登入联机中,而是以已登入使用者数据表有无记录该联机的登入信息为判断准则,若有则表示该联机仍然有效,反的,则表示该联机为断线未登入状态,同时,若在该联机仍然有效的情况下且Session对象中的用户帐号已丢失,则读取已登入使用者数据表令该联机的记录并将用户账号记录在服务器的Session对象中,以表示该联机为已登入且为有效的联机,因此图1e可克服因为网路暂时的故障,造成Session对象因为网页不动作超时而丢失Session对象的用户数据所造成的假性断线的问题。图1e的处理流程为:
第1e-1步骤:在第1b-5步骤中设定了浏览器的回送周期,当周期时间到,浏览器即利用Ajax技术送出网页请求到服务端。
第1e-2步骤:以该联机的SessionID为键值,从已登入使用者数据表读取该联机的登入记录。
第1e-3步骤:若前步骤欲读取的数据不存在,表示该联机为断线未登入状态,并进行未登入的处理。
第1e-4步骤:以现在时间更新已登入使用者数据表的该联机数据中的最近存活时间记录。
第1e-5步骤:判断Session对象中是否记录用户帐号,若有,则结束定期回送作业。
第1e-6步骤:若Session对象中没有记录用户帐号,则将读取到的使用者账号,以步骤1a-5所取的键值,记录在服务器的Session对象中。
为了达成实时帐务管理及适用在储值预付制帐务系统的目的,我们可在已登入使用者数据表中加入可用连线时间的拦位,可以由管理单位设定给予各账号可用连线时间,在联机过程中通过定期回送机制扣减联机的时间,并判断该使用者账号的可用连接时间若不大在0则回传中止联机的讯息给浏览器,浏览器在收到这个讯息后便自动注销。此外,在登入程序步骤1a-2中加入判断该使用者的可用连接时间是否大在0,若为是,才可执行后续的步骤。同时,在注销程序的步骤1d-1与1d-2间加入计算最近存活时间与注销时间所经过的时间,并自使用者资料文件中该用户记录的可用连接时间中扣除。而可用联机时间的设定可以应用在储值预付制度的系统。图1f为其流程图:
第1f-1步骤:在第1b-5步骤中设定了浏览器的回报周期,当周期时间到,浏览器即利用Ajax技术送出网页请求到服务端。
第1f-2步骤:以该联机的SessionID为键值,从已登入使用者数据表读取该联机的登入记录。
第1f-3步骤:若前步骤欲读取的数据不存在,表示该联机为断线未登入状态,并进行未登入的处理。
第1f-4步骤:先将最近存活时间备份到另储存位置以备后续步骤使用,再以现在时间更新已登入使用者资料表的该联机数据中的最近存活时间记录。
第lf-5步骤:判断Session对象中是否记录用户帐号,若有,则跳到第lf-7步骤。
第If-6步骤:若Session对象中没有记录用户帐号,则将读取到的使用者账号,以步骤1a-5所取的键值,记录在服务器的Session对象中。
第1f-7步骤:将已登入使用者数据表的可连接时间扣减上次的最近存活时间(在步骤1f-4中已先行备份)到现在时间所经过的时间
第1f-8步骤:判断若剩余的可连接时间大在0,则结束定期报工作。
第1f-9步骤:若剩余的可连接时间不大在0,则传送中止联机讯息给浏览器后结束定期报工作。
图2为列出目前已登入的所有用户的流程,本流程使用循环列举出所有上线登入的使用者:
第2-1步骤:已登入使用者数据表中是否还有未读取出的用户联机数据,若为否,则结束列举作业。
第2-2步骤:从已登入使用者数据表中读取下笔连线数据。
第2-3步骤:判断现在时间减去该使用者最新存活时间是否小于断线超时时限,若为否,则表示该联机可能因不正常结束浏览器或网络断线,因而无法联机,这样的状况下我们当成该联机已注销,不列出该联机的使用者,并回到第2-1步骤。
第2-4步骤:输出该联机的用户账号及其相关数据后回到第2-1步骤。
图3为重新整理已登入用户数据表流程,本流程使用循环列举出所有上线的联机并检查是否有超时尚未回报的联机,若有,则将这些用户数据从已登入用户资料表中删除掉,而这整理作业可以在服务器以定时的方式来执行,以清除不必要的数据:
第3-1步骤:已登入使用者数据表中是否还有未读取出的用户联机数据,若为否,则结束列举作业。
第3-2步骤:从已登入使用者数据表中读取笔联机数据。
第3-3步骤:判断现在时间减去该使用者最新存活时间是否小于断线超时时限,若为是,则表示该联机处在正常状况下,不可删除,并回到第3-1步骤,继续列举出已登入的联机。
第3-4步骤:执行到此步骤,表示该联机可能因不正常结束浏览器或网络断线,因而无法联机,从已登入使用者数据表中删除该笔联机数据后回到第3-1步骤。
图4为已登入使用者数据表的架构,每横列代表一个已登入用户联机的数据,每已登入使用者联机的资料至少包括使用者账号、最近存活时间的记录及SessionID,用户账号为用以记录该笔登入的使用者帐号,最近存活时间用以记录浏览器最近的回报时间,做为判别该联机是否不正常结束浏览器或因网络问题而失联的依据,SessionID做为已登入使用者数据表识别的用。已登入用户数据表可以储存在内存、档案或数据库等足以让其他需要使用者管理的网页可以共同存取的位置。一般来说存放在内存时大都指存放在Application对象。而若储存在Application对象中,则用户账号、最近存活时间及SessionID等拦位间的数据可以第分隔号(如;)隔开,而每笔资料后再以第二竖线(如/)隔开,并将所有数据汇集在字符串后储存在Application对象中,尔后在搜寻时即可以第二竖线为切割不同使用者数据的界线,而以第竖线为区隔不同字段数据的依据,以找到所要的数据。
本发明以定期回送驱使浏览器定时进行讯息回报,使得服务器知道其仍然上线中,而利用此定期回送的机制,稍加修改我们可以再增加一个数据复原(UnDo)的功能,其主要为让使用者可以回复到前输入的数据状态,同时也可以定时自动将浏览器输入中的数据备份。其原理为设置如图8a及图8b的历史数据文件,由在数据复原的作业属一种后进先出的堆栈动作,因此,该文件的第笔记录(或第一个数据项)设置为整数的储存空间,以记录堆迭指针,而其他空间则以数据笔数的编号为识别,从0号开始编起,每笔数据报含复数组输入组件的数据,而每组输入组件数据报含输入组件名称及该输入组件的最新内容,假设堆栈指针使用了q个字节的储存空间,而每笔历史数据使用一个储存空间,则编号为s号的历史资料其储存位置在q+r*s。当网页进行定期回送时,会将网页中输入组件的最新内容传送到服务器,服务器接收到数据后除了进行最近存活时间的更新外,同时比较所接收到的网页中输入组件最新内容与前次(即目前历史数据文件堆栈顶端的数据)是否完全相同,若完全相同则不必做任意何的修改及存盘,反的,若有所不同则将接收到的网页中输入组件最新内容按每组件的名称及内容为组,按图8a的格式储存在历史数据文件堆栈顶端。而当使用者在网页上按了复原的按钮,服务器从历史数据文件历史数据的最顶端撷取笔数据,并分别将数据内容设定给所记录组件名称的组件内容,待服务端完成后传送到浏览器的网页内容即为前次输入的内容。在历史数据的规划须先决定那些输入组件要进行复原,并须决定每个输入组件最大的数据长度以计算出每笔历史数据所使用的储存空间大小,而为了清楚区隔不同联机用户的历史数据文件,我们使用每个Session都不同的SessionID为历史数据标的文件名,当开始进行历史数据存盘时发现历史数据文件不存在即可随即建立,而当Session结束或使用者注销时即可删除该档案,因历史数据文件为与网页相关,即不同网页间的历史资料是无法共享,因此在网页转换或是浏览器交付数据存盘的时侯,可将历史数据文件的堆栈指针设为0,以清除所有历史资料。
图5为具数据复原功能的定期回送处理流程:
第5-1步骤:浏览器使用Ajax技术送出网页中输入组件目前的内容并向服务器提出网页的请求。
第5-2步骤:以步骤1a-5所取的键值,检查对应在该键值的Session对象是否记录用户账号,若为否表示该使用者尚未登入,进行未登入的处理或连结到未登入处理的网页。
第5-3步骤:以该联机的SessionID为键值,将已登入使用者数据表中该联机的最近存活时间记录更新为现在时间。
第5-4步骤:比权本次传送的网页中输入组件数据是否与上次传送(也即目前堆栈顶端)的数据相同,若为相同则不必进行历史数据存盘。若为不同或是目前堆栈无数据则进行下列的数据存盘流程。
第5-5步骤:判断历史数据文件是否已存在,若已存在则跳到5-6步骤,否则执行5-5-1步骤。
第5-5-1步骤:以SessionID为文件名建立历史数据权。
第5-5-2步骤:将堆栈指针设为0。
第5-6步骤:将浏览器送出的网页输入组件内容储存到历史数据文件中堆栈指针所指位置。
第5-7步骤:在网页中加入并启用「复原」功能超连结或按钮,以提供用户欲复原数据时使用。
第5-8步骤:将堆栈指针加1并回存到历史资料文件。图6为数据复原时的处理流程。
第6-1步骤:读取历史数据文件中堆栈指针。
第6-2步骤:判断堆栈指针是否为0,若为0表示历史数据槽没有历史数据,显示错误讯息以告知用户已无历史数据可复原。
第6-3步骤:将堆栈指针减1。
第6-4步骤:读取堆栈指针所指位置的历史数据。
第6-5步骤:按所读取的组件名称及内容设定网页中输入组件的内容。
第6-6步骤:回存堆栈指针。
图7为具数据复原功能的用户注销处理流程
第7-1步骤:以步骤1a-5所取的键值,检查对应在该键值的Session对象是否记录用户账号,若为否表示该使用者尚未登入,进行未登入的处理或连结到未登入处理的网页。
第7-2步骤:删除已登入使用者数据表中该联机的资料。
第7-3步骤:删除Session对象中用户数据的记录。
第7-4步骤:若历史数据文件存在,则将该档删除。
此外,在已登入使用者数据表中加入登入时间,在成功登入时将登入的时间记录在该字段,用以计算各使用者联机的连接时间,其计算方式为以注销时间或最后次回报时间减去登入时间即为各使用者联机的连接时间,可做为使用者帐务(accounting)或计费的用,而在注销程序与重新整理已登入用户数据表程序中分别加入计算登出或已断线用户的连接时间并将的累积到用户数据文件中各用户的连接时间,以为各使用者联机帐务计费的用。如前所述本发明更可拓展包含如在网页上实时显示所有用户的状态(如登入、注销或断线)的功能,主要为在浏览以脚本语言设定计时(如setTimeout或setlnterval)定期引发事件以利用Ajax技术向服务端提出网页请求,服务端接受该请求后便执行该被请求的网页程式,以图2列出目前已登入的所有用户的程序来执行,并将资料回传给浏览器显示,若欲显示所有的联机数据,则可将前述执行图2的程序修改为输出所有的联机,并判断现在时间减去该使用者最新存活时间是否小于断线超时时限若是表示正常联机中,否则为断线中的状态。
Claims (10)
1.一种电子商务系统的用户管理方法,包括以下程序所进行的管控处理:
步骤a.使用者登入时:当使用者登入时验证成功后必须将该用户数据记录下来;
步骤b.开始执行网页:用以判断使用者是否已登入或使用者是否具备足够的权限以执行这个网页;
步骤c.定期回送:已登入使用者的浏览器,必须通过网页请求的方式定期回送到服务端,以定期回送该使用者仍在于线的讯息给服务器,同时更新其存活时间,让服务器知道其仍然上线中;
步骤d.用户注销:用户相关资料删除的处理。
2.根据权利要求1项所述电子商务系统的用户管理方法,其特征在于用户数据需记录在已登入使用者数据表,该数据表每横列代表一个已登入用户联机的数据,每已登入用户联机的数据至少包括用户账号、最近存活时间的记录及SessionID。
3.根据权利要求2项所述电子商务系统的用户管理方法,其特征在于用户登入时的流程,包括有:
步骤a.浏览器在用户输入必要的用户信息后,按下登入按钮将数据交付传送到服务端;
步骤b.服务端接收数据后利用用户数据文件进行必要的用户账号与密码的验证作业,若未通过验证则连结到重新登入页面、结束登入作业或其他处理,可依网站的设计策略来改变;
步骤c.在已登入使用者数据表中,新增笔用户记录,并将用户账号及该联机的SessionID储存在该笔记录;
步骤d.将已登入使用者数据表的最近存活时间更新为现在时间;
步骤e.取代表使用者的字词当成键值,将用户账号记录在对应在该键值的Session对象中;
步骤f.执行其他工作或连结到其他网页。
4.根据权利要求2项所述电子商务系统的用户管理方法,其特征在于开始执行网页的流程,包括有:步骤a.首先判断本网页是否为具安全性需登入的网页,若为否,则直接执行网页,毋须检查使用者是否登入,若为是则继续进行下述的工作;
步骤b.以所取为代表使用者的字$当成键值,检查对应在该键值的Session对象是否记录用户账号,若为否表示该使用者尚未登入,进行未登入的处理或连结到未登入处理的网页;
步骤c.以SessionID为键值,在已登入用户数据表中取出该联机的最近存活时间,计算现在时间减去最近存活时间称的为未回报期间,检查未回报期间是否小于等在断线超时时限,若为否,则表示该使用者已断线,进行未登入的处理或连结到未登入处理的网页;步骤d进行网页主要的处理部份;
步骤e.待服务端处理完成将网页送到浏览器,以浏览器脚本语言设定捕捉关闭浏览器及浏览器离开该已登入网页的事件,并设定发生该些事件时,即执行注销网页的动作;
步骤f.以浏览器脚本语言设定浏览器定期回送给服务端的回送周期;
步骤g.执行测览器必要执行的其他动作。
5.根据权利要求2项所述电子商务系统的用户管理方法,其特征在于定期回送的流程,包括有:
步骤a.当周期时间到,浏览器即利用Ajax技术送出网页请求到服务端;
步骤b.服务端接受该网页请求后即以所取为代表使用者的字词当成键值,检查对应在该键值的Session对象是否记录用户账号,若为否表示该使用者尚未登入,进行未登入的处理或连结到未登入处理的网页;步骤c以该联机的SessionID为键值,将已登入使用者数据表中该联机的最近存活时间记录更新为现在时间。
6.根据权利要求1、2、3、4或5项所述电子商务系统的使用者管理方法,其特征在于用户注销的流程,包括有:
步骤a.以所取为代表使用者的字词当成键值,检查对应在该键值的Session对象是否记录用户账号,若为否则进行未登入的处理或连结到未登入处理的网页;步骤b.删除已登入使用者数据表中该使用者的资料;
步骤c.删除Session对象中用户数据的记录。
7.根据权利要求6项所述电子商务系统的用户管理方法,其定期回送的流程,包括下列步骤,以允许较长时间的网络断线:
步骤a.当回报周期时间到,浏览器即利用Ajax技术送出网页请求到服务端;
步骤b.服务端接受该网页请求后即以该联机的SessionID为键值,从已登入使用者数据表读取该联机的登入记录,
步骤c.若前步骤欲读取的数据不存在,则进行未登入的处理;
步骤d.以现在时间更新已登入使用者数据表的该联机育料中的隶近存活时间记录,
步骤e.判断Session对象中是否记录用户账号,若有,则结束定期回送作业;
步骤f.若Session对象中没有记录用户账号,则将读取到的使用者账号,以所取为代表使用者的字词当成键值,记录在服务器的Session对象中。
8.根据权利要求7项所述电子商务系统的用户管理方法,其特征在于更包括有列出目前已登入所有使用者的程序,其流程包括:
步骤a.判断已登入使用者数据表中是否还有未读取出的用户联机数据,若为否,则结束列举作业;
步骤b.从已登入使用者数据表中读取下笔联机数据;
步骤c.判断现在时间减去该使用者最新存活时间是否小于断线超时时限,若为否则回到步骤a;
步骤d.输出该联机的用户账号及其相关数据后回到步骤a。
9.根据权利要求7项所述电子商务系统的用户管理方法,其特征在于更包括重新整理已登入用户数据表的程序,其流程包括:
步骤a.判断已登入使用者数据表中是否还有未读取出的用户联机数据,若为否,则结束列举作业;步骤b.从已登入使用者数据表中读取笔联机资料;
步骤c.判断现在时间减去该使用者最新存活时间是否小于断线超时时限,若为是,回到步骤a;
步骤d.从已登入使用者数据表中删除该笔联机资料后回到步骤a。
10.—种使用在电子商务系统中数据复原的方法,其定期回送机制处理流程包括:
步骤a.浏览器使用Ajax技术送出网页中输入组件目前的内容并向服务器提出网页的请求;
步骤b.以所取为代表使用者的字词当成键值,检查对应在该键值的Session对象是否记录用户账号,若为否表示该使用者尚未登入5进行未登入的处理或连结到未登入处理的网页;步骤c.以联机的SessionID为键值,将已登入使用者数据表中该联机的最近存活时间记录更新为现在时间;
步骤d.比较本次传送的网页中输入组件数据是否与上次传送(也即目前堆栈顶端)的数据相同,若为相同则不必进行历史数据存盘,若为不同或是目前堆栈无资料则进行下列的数据存盘流程;
步骤e.判断历史数据文件是否已存在,若已存在则跳到步骤f,否则执行el步骤;
步骤el.以SessionID为标名建立历史数据标;
步骤e2.将堆栈指针设为0;
步骤f.将浏览器送出的网页输入组件内容储存到历史数据文件中堆栈指针所指位置;
步骤g.在网页中加入并启用「复原」功能超链接或按钮,以提供用户欲复原数据时使用;
步骤h.将堆栈指针并回存到历史资料文件。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510821344.3A CN105471991A (zh) | 2015-11-23 | 2015-11-23 | 电子商务系统的用户管理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510821344.3A CN105471991A (zh) | 2015-11-23 | 2015-11-23 | 电子商务系统的用户管理方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105471991A true CN105471991A (zh) | 2016-04-06 |
Family
ID=55609254
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510821344.3A Pending CN105471991A (zh) | 2015-11-23 | 2015-11-23 | 电子商务系统的用户管理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105471991A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017177687A1 (zh) * | 2016-04-12 | 2017-10-19 | 上海斐讯数据通信技术有限公司 | 接入认证页面网络资费指标同步方法、设备及系统 |
CN108270753A (zh) * | 2016-12-30 | 2018-07-10 | 北京国双科技有限公司 | 注销用户账号的方法及装置 |
CN111988198A (zh) * | 2020-07-31 | 2020-11-24 | 中移(杭州)信息技术有限公司 | 在线用户人数统计方法、装置、电子设备及计算机介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW201003543A (en) * | 2008-07-09 | 2010-01-16 | Univ Chienkuo Technology | User managing method of electronic commerce systems |
-
2015
- 2015-11-23 CN CN201510821344.3A patent/CN105471991A/zh active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW201003543A (en) * | 2008-07-09 | 2010-01-16 | Univ Chienkuo Technology | User managing method of electronic commerce systems |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017177687A1 (zh) * | 2016-04-12 | 2017-10-19 | 上海斐讯数据通信技术有限公司 | 接入认证页面网络资费指标同步方法、设备及系统 |
CN108270753A (zh) * | 2016-12-30 | 2018-07-10 | 北京国双科技有限公司 | 注销用户账号的方法及装置 |
CN111988198A (zh) * | 2020-07-31 | 2020-11-24 | 中移(杭州)信息技术有限公司 | 在线用户人数统计方法、装置、电子设备及计算机介质 |
CN111988198B (zh) * | 2020-07-31 | 2022-02-25 | 中移(杭州)信息技术有限公司 | 在线用户人数统计方法、装置、电子设备及计算机介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103078881B (zh) | 网络资源下载信息的分享控制系统和方法 | |
CN101782919B (zh) | 一种网页表单数据输出方法、装置及表单处理系统 | |
CN101841537B (zh) | 一种基于协议代理实现对文件共享访问控制方法及系统 | |
US9300755B2 (en) | System and method for determining information reliability | |
CN104486346B (zh) | 一种跳板机系统 | |
CN102833212B (zh) | 网页访问者身份识别方法及系统 | |
CN103875015A (zh) | 利用用户行为的多因子身份指纹采集 | |
JP2012509520A (ja) | スナップショットデータベースを用いた情報復旧方法および装置 | |
US20090024748A1 (en) | Website monitoring and cookie setting | |
US9462014B1 (en) | System and method for tracking and auditing data access in a network environment | |
CN103443781A (zh) | 数据递送 | |
CN105827706A (zh) | 消息推送装置及方法 | |
CN104519018A (zh) | 一种防止针对服务器的恶意请求的方法、装置和系统 | |
JP2000099461A (ja) | ユ―ザ・セッションを形成し、該ユ―ザ・セッションに応じたインタ―ネット・デ―タを提供する方法及び装置 | |
CN103473489B (zh) | 一种安全生产综合监管的权限验证系统及权限验证方法 | |
CN105516133A (zh) | 用户身份的验证方法、服务器及客户端 | |
CN105930228A (zh) | 数据备份方法及系统 | |
CN102752288A (zh) | 网络访问行为识别方法和装置 | |
CN102891832B (zh) | 身份标识绑定方法及系统 | |
CN104836879A (zh) | 通讯录的更新方法、服务器及系统 | |
CN106657228A (zh) | 一种利用云端进行并发采集的爬虫实现方法 | |
CN105989426A (zh) | 一种面向标准信息服务业的客户关系管理系统 | |
CN105471991A (zh) | 电子商务系统的用户管理方法 | |
CN101378396A (zh) | 网络钓鱼通知服务 | |
WO2015154119A1 (en) | Sending bills |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20160406 |
|
RJ01 | Rejection of invention patent application after publication |