A data processing method, a server and a computer readable storage medium
By generating random user identifiers in the questionnaire system and sending them to the data server, the problem of user privacy leakage was solved, ensuring the reliability of the questionnaire results and the security of user privacy.
Patent Information
- Application Number
- CN202110127135.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-01-29
- Publication Date
- 2026-02-24
- Estimated Expiration
- 2041-01-29
AI Technical Summary
Existing questionnaire survey methods cannot effectively protect user privacy, and users' specific information and identities are easily identified, leading to privacy leaks.
By generating a random user identifier on the login server and sending it to the client, the client sends the completed questionnaire and user identifier to the data server. The data server only obtains the user identifier and not specific information, thus ensuring user privacy and security.
This approach protects user privacy during the questionnaire survey process, prevents data servers from obtaining specific user information, and improves the reliability of questionnaire results and the security of user privacy.
Smart Images

Figure CN114820016B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of Internet technology, and in particular to a data processing method, a server, and a computer-readable storage medium. Background Technology
[0002] Currently, an increasing number of surveys are choosing to use questionnaires to collect user information. A questionnaire, also known as a survey form, is a tool for collecting data in social research. It is a printed document that systematically records survey content in the form of questions. Essentially, it is a series of questions designed to collect information such as people's attitudes, behavioral characteristics, values, viewpoints, or beliefs regarding a specific issue. Questionnaire surveys, also known as the questionnaire method, are survey methods where designers use standardized questionnaires to understand the situation or solicit opinions from respondents and collect information. Currently, the main questionnaire method is the micro-document collection form, which can automatically fill in basic information. However, the results of each questionnaire allow users to see their specific information and identify who they are, making it impossible to guarantee user privacy. Summary of the Invention
[0003] This invention provides a data processing method, a server, and a computer-readable storage medium that can ensure the privacy and security of users filling out questionnaires.
[0004] A first aspect of this application provides a data processing method applied to a login server, the method comprising:
[0005] The client receives a login request for a target user, the login request including user attributes associated with the first questionnaire, and the login request is generated by the client after obtaining the questionnaire data of the first questionnaire from the data server;
[0006] After obtaining the first user information corresponding to the user attributes of the target user associated with the first questionnaire, the first user identifier of the target user is generated.
[0007] The first user identifier of the target user is sent to the client, so that the client sends the completed first questionnaire and the first user identifier of the target user to the data server.
[0008] A second aspect of this application provides a data processing method applied to a client, the method comprising:
[0009] When a trigger action by the target user on the first questionnaire is detected, a data retrieval request for the first questionnaire is sent to the data server;
[0010] Receive the questionnaire data of the first questionnaire sent by the data server based on the data acquisition request;
[0011] Obtain the first user identifier of the target user generated by the login server;
[0012] After receiving the target user's submission of the first questionnaire, the completed first questionnaire and the target user's first user identifier are sent to the data server.
[0013] A third aspect of this application provides a data processing apparatus, the apparatus comprising:
[0014] The receiving module is used to receive a login request for a target user sent by the client. The login request includes user attributes associated with the first questionnaire. The login request is generated by the client after obtaining the questionnaire data of the first questionnaire from the data server.
[0015] The processing module is used to generate a first user identifier for the target user after obtaining the first user information corresponding to the user attributes associated with the first questionnaire of the target user.
[0016] The sending module is used to send the first user identifier of the target user to the client, so that the client sends the completed first questionnaire and the first user identifier of the target user to the data server.
[0017] A fourth aspect of this application provides a data processing apparatus, the apparatus comprising:
[0018] The sending module is used to send a data retrieval request for the first questionnaire to the data server when a triggering operation of the target user on the first questionnaire is detected.
[0019] A receiving module is used to receive the questionnaire data of the first questionnaire sent by the data server based on the data acquisition request;
[0020] The processing module is used to obtain the first user identifier of the target user generated by the login server;
[0021] The sending module is further configured to send the completed first questionnaire and the first user identifier of the target user to the data server after receiving the submission operation of the target user for the first questionnaire.
[0022] The fifth aspect of this application provides a server including a processor and a memory interconnected thereto, wherein the memory is used to store a computer program including program instructions, and the processor is configured to invoke the program instructions to execute the data processing method of the first aspect described above.
[0023] The fifth aspect of this application provides a terminal device including a processor and a memory interconnected thereto, wherein the memory is used to store a computer program, the computer program including program instructions, and the processor is configured to invoke the program instructions to execute the data processing method of the second aspect described above.
[0024] This application provides a computer-readable storage medium storing program instructions that, when executed, implement the data processing method described above.
[0025] The seventh aspect of this application provides a computer program product or computer program, which includes computer instructions stored in a computer-readable storage medium. When the computer instructions are executed by the processor of a terminal device or a login server, the data processing method described above is performed.
[0026] In this embodiment, the login server receives a login request for a target user sent by the client. This login request is generated by the client after obtaining the questionnaire data of the first questionnaire from the data server. After obtaining the first user information corresponding to the user attributes associated with the first questionnaire of the target user, the server generates the first user identifier of the target user. The first user identifier of the target user is sent to the client so that the client sends the completed first questionnaire and the first user identifier of the target user to the data server. At this time, the data server (i.e., the questionnaire publisher) only obtains the first user identifier and cannot obtain the user information of the first user, thus ensuring the privacy and security of the user who fills out the questionnaire. Attached Figure Description
[0027] To more clearly illustrate the technical solutions in the embodiments of the present invention or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0028] Figure 1 This is a schematic diagram of the structure of a data processing system provided in an embodiment of the present invention;
[0029] Figure 2 This is a flowchart illustrating a data processing method provided in an embodiment of the present invention;
[0030] Figure 3 This is a flowchart illustrating another data processing method provided in an embodiment of the present invention;
[0031] Figure 4This is a flowchart illustrating another data processing method provided in an embodiment of the present invention;
[0032] Figure 5 This is a schematic diagram of the overall implementation process of a data processing scheme provided in an embodiment of the present invention;
[0033] Figure 6 This is a schematic diagram of the structure of a data processing device provided in an embodiment of the present invention;
[0034] Figure 7 This is a schematic diagram of another data processing device provided in an embodiment of the present invention;
[0035] Figure 8 This is a schematic diagram of the structure of a server provided in an embodiment of the present invention;
[0036] Figure 9 This is a schematic diagram of the structure of a terminal device provided in an embodiment of the present invention. Detailed Implementation
[0037] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.
[0038] Cloud technology refers to a managed technology that unifies a series of resources such as hardware, software, and networks within a wide area network or local area network to achieve data computing, storage, processing, and sharing.
[0039] Cloud technology is a collective term for network technologies, information technologies, integration technologies, management platform technologies, and application technologies applied to the cloud computing business model. It can form resource pools, providing flexible and convenient on-demand access. Cloud computing technology will become a crucial support. Backend services of technical network systems require substantial computing and storage resources, such as video websites, image websites, and many portal websites. With the rapid development and application of the internet industry, every item may have its own identification mark in the future, requiring transmission to backend systems for logical processing. Data at different levels will be processed separately, and various industry data will all require robust system support, which can only be achieved through cloud computing.
[0040] Cloud storage is a new concept that extends and develops from the concept of cloud computing. A distributed cloud storage system (hereinafter referred to as a storage system) refers to a storage system that uses cluster applications, grid technology and distributed storage file systems to bring together a large number of storage devices of various types in the network (storage devices are also called storage nodes) to work together through application software or application interfaces to provide data storage and business access functions to the outside world.
[0041] Currently, the storage method in storage systems is as follows: Logical volumes are created, and during creation, physical storage space is allocated to each logical volume. This physical storage space may consist of a single storage device or the disks of several storage devices. Clients store data on a logical volume, which means storing the data on the file system. The file system divides the data into many parts, each part being an object. Each object contains not only the data but also additional information such as a data identifier (ID, ID entity). The file system writes each object to the physical storage space of that logical volume and records the storage location information of each object. Therefore, when a client requests access to data, the file system can allow the client to access the data based on the storage location information of each object.
[0042] The process by which a storage system allocates physical storage space to a logical volume is as follows: the physical storage space is pre-divided into strips according to the capacity estimate of the objects stored in the logical volume (this estimate often has a large margin relative to the actual capacity of the objects to be stored) and the grouping of Redundant Array of Independent Disks (RAID). A logical volume can be understood as a strip, thus allocating physical storage space to the logical volume.
[0043] To better protect user privacy, this application provides a data processing system, which may be a questionnaire system, survey system, or data collection form system. Please refer to... Figure 1The data processing system may include a terminal device 101, a login server 102, and a data server 103. The terminal device 101 runs various clients, where a client can refer to a software entry point that directly interacts with the user. For example, the client can be a webpage (world wide web) or a client application running on the terminal device 101. In a specific implementation, a client for completing a questionnaire runs on the terminal device 101, through which the user can be shown the questionnaire. The login server 102 can display a data authorization request through the client on the terminal device 101. When the client on the terminal device 101 detects the user's confirmation operation for the data authorization request, it can send an authorization approval notification message to the login server. Then, the login server 102 generates a user identifier based on the authorization approval message and sends the user identifier to the client on the terminal device 101. After the user completes the questionnaire, the client on the terminal device 101 can send the completed questionnaire and the user identifier to the data server 103, and the data server 103 saves the completed questionnaire and the user identifier.
[0044] It should be noted that the terminal devices mentioned above can be smartphones, tablets, laptops, desktop computers, etc.; the login server and data server can be independent physical servers, server clusters or distributed systems composed of multiple physical servers, or cloud servers that provide basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, content delivery networks (CDNs), and big data and artificial intelligence platforms, etc. This application's embodiments do not limit the scope of these claims.
[0045] In practice, this data processing system can be deployed based on a blockchain network. This means that terminal devices, login servers, and data servers can all be deployed within the blockchain network, or the terminal devices can be deployed outside the blockchain network while the login and data servers are deployed within it. When the login and data servers are deployed within the blockchain network, and each of them is a server cluster or distributed system composed of multiple physical servers, each physical server can act as a node in the blockchain network. The blockchain mentioned here refers to a novel application model of computer technologies such as distributed data storage, peer-to-peer transmission, consensus mechanisms, and encryption algorithms. Essentially, it is a decentralized database, a chain of data blocks linked using cryptographic methods. In the data processing method disclosed in this application, this data (such as questionnaire data, questionnaire identifiers, and associated user attributes, user identifiers, and corresponding user information) can be stored on the blockchain.
[0046] In this embodiment, the login server and data server are servers from different companies. The client and data server can be servers from the same company or servers from different companies. The login server can act as a third-party service to submit the user's basic information to the data processing system and generate a unique user identifier for the user when filling out the questionnaire. After the user completes the questionnaire, the user identifier and the completed questionnaire only need to be sent to the data server. Since the data server and the login server do not communicate with each other, the privacy and security of the user who fills out the questionnaire can be guaranteed.
[0047] Based on the data processing system provided above, please refer to Figure 2 , Figure 2 This is a flowchart illustrating a data processing method provided in an embodiment of the present invention. The method can be executed by the aforementioned login server. The data processing method described in this embodiment may include the following steps S201-S203:
[0048] S201. Receive a login request for the target user sent by the client.
[0049] Here, the client can refer to the above. Figure 1 The client running on the terminal device includes applications running on the terminal device or web pages opened in the browser on the terminal device. The login request includes user attributes associated with the first questionnaire. The associated user attributes refer to the dimensions of user information required when completing the first questionnaire. The user attributes associated with the first questionnaire may include dimensions such as gender, age, and nickname. The user attributes associated with the first questionnaire can be set by the survey party or the questionnaire publisher according to their needs. This login request is generated by the client after obtaining the questionnaire data of the first questionnaire from the data server.
[0050] In the specific implementation, when any user (referred to as the target user) wants to fill out a questionnaire (such as the first questionnaire), the target user can open the first questionnaire in the client. Correspondingly, the client will detect the target user's triggering action on the first questionnaire, which could be clicking on the first questionnaire, etc. The client can then send a data retrieval request for the first questionnaire to the data server. After receiving the questionnaire data from the first questionnaire sent by the data server based on the data retrieval request, the client generates a login request and sends a login request for the target user to the login server.
[0051] S202. After obtaining the first user information corresponding to the user attributes associated with the first questionnaire for the target user, generate the first user identifier for the target user.
[0052] In its implementation, after user authorization, the login server can obtain the target user's first user information based on the user attributes associated with the first questionnaire. This first user information corresponds to the user attributes associated with the first questionnaire. For example, the user information associated with the first questionnaire includes gender and nickname. Based on gender and nickname, the login server can determine that the target user's gender is 10 years old and their nickname is "AA". After successfully obtaining the first user information, the login server can generate the target user's first user identifier using a random number generation method. This first user identifier can be randomly composed of numbers and characters. It should be noted that the first user identifier generated in this embodiment is randomly generated and not based on the first user information. The first user identifier is unrelated to the specific content of the first user information; the specific content of the first user information cannot be inferred from the first user identifier. Furthermore, the login server stores the first user information corresponding to the first user identifier only during the valid period of the first questionnaire, so that when the same user opens the first questionnaire multiple times within the valid period, the same user identifier (i.e., the first user identifier) is returned to the target user.
[0053] S203. Send the target user's first user identifier to the client so that the client can send the completed first questionnaire and the target user's first user identifier to the data server.
[0054] In the specific implementation, after generating the first user identifier, the login server needs to send the target user's first user identifier to the client. At this time, the client's questionnaire filling interface can display the questionnaire data of the first questionnaire, as well as the submit and cancel buttons for the first questionnaire. When the target user clicks the submit button, the client will detect the target user's submission operation for the first questionnaire, and then send the completed first questionnaire and the target user's first user identifier to the data server.
[0055] In one feasible embodiment, the login server can upload the first questionnaire completed by the target user and the target user's first user identifier to the blockchain network to prevent the first questionnaire completed by the target user and the target user's first user identifier from being tampered with. In a specific implementation, after any node receives the first questionnaire completed by the target user and the target user's first user identifier, it can verify the first questionnaire completed by the target user and the target user's first user identifier. When the verification is successful, the first questionnaire completed by the target user and the target user's first user identifier are generated into a block and sent to other nodes in the blockchain network. After the other nodes verify the generated block, they add the block to the blockchain network after the verification is completed.
[0056] In this embodiment, the login server receives a login request for the target user sent by the client after the client obtains the questionnaire data of the first questionnaire from the data server. After obtaining the first user information corresponding to the user attributes associated with the first questionnaire of the target user, the server generates the first user identifier of the target user. The first user identifier of the target user is sent to the client so that the client sends the completed first questionnaire and the first user identifier of the target user to the data server. At this time, the data server only obtains the first user identifier and cannot obtain the user information of the first user, thus ensuring the privacy and security of the user who fills out the questionnaire.
[0057] Based on the data processing system provided above, please refer to Figure 3 , Figure 3 This is a flowchart illustrating another data processing method provided in an embodiment of the present invention. The method can be executed by the aforementioned login server. The data processing method described in this embodiment may include the following steps S301-S306:
[0058] S301. Receive a login request sent by the client for the target user. The login request includes user attributes associated with the first questionnaire. The login request is generated by the client after obtaining the questionnaire data of the first questionnaire from the data server.
[0059] The specific implementation of step S301 can be referred to the specific implementation of step S201 above, and will not be repeated here.
[0060] S302. After obtaining the first user information corresponding to the user attributes associated with the first questionnaire for the target user, generate the first user identifier for the target user.
[0061] In its implementation, after receiving a login request for a target user from a client, the login server sends a data authorization request to the client. This data authorization request may include at least the user attributes associated with the first questionnaire, the questionnaire identifier of the first questionnaire, and its validity period. In some cases, the data authorization request may also include a snapshot of the first questionnaire's content, allowing the target user to verify the questionnaire data based on the snapshot, thereby ensuring the reliability of the first questionnaire. The questionnaire identifier of the first questionnaire can be randomly generated by the login server; the validity period of the first questionnaire refers to the time during which the user can complete the first questionnaire, which can be set according to user needs; the snapshot of the first questionnaire's content refers to a copy of the first questionnaire; and the data authorization request instructs the client to display the user attributes associated with the first questionnaire, the questionnaire identifier of the first questionnaire, and its validity period to the target user.
[0062] Each questionnaire's identifier can be generated by the login server. Therefore, each questionnaire's identifier is completely unique. Taking the implementation process where the identifier for the first questionnaire is randomly generated by the login server as an example: When the surveyor or questionnaire publisher wants to collect information, they can send a questionnaire registration request to the login server through the data server. The login server can receive this request, which carries the questionnaire information for the first questionnaire. This information may include the validity period and associated user attributes. The login server then responds to the registration request by generating the identifier for the first questionnaire, associating the questionnaire information with the identifier, and finally sending the identifier to the data server.
[0063] It should be noted that the association between the questionnaire information and the questionnaire identifier of the first questionnaire here is only a correspondence; that is, the questionnaire information of the first questionnaire will correspond to a questionnaire identifier, but in fact the questionnaire identifier of the first questionnaire is randomly generated.
[0064] Furthermore, when the target user displays the user attributes associated with the first questionnaire, the questionnaire identifier of the first questionnaire, and the validity period on the client, the login server receives a notification message sent by the client after receiving the trigger operation of the target user's authorization request for the data; wherein, if the trigger operation is a confirmation operation, the notification message is a notification message indicating that the authorization has been approved; if the trigger operation is a cancellation operation, the notification message is a notification message indicating that the authorization has not been approved.
[0065] In a feasible embodiment, when the target user authorizes the client through methods such as QR code login or password login, the triggering operation can be considered as a confirmation operation; the login server receives the confirmation operation of the target user for the data authorization request, sends an authorization approval notification message, and responds to the authorization approval notification message to obtain the first user information corresponding to the user attributes associated with the first questionnaire of the target user.
[0066] In a feasible embodiment, when the target user exits the interface displaying the user attributes associated with the first questionnaire, the questionnaire identifier of the first questionnaire, and the validity period of the first questionnaire displayed on the client, the triggered operation can be considered as a cancellation operation; the login server receives the authorization failure notification message sent by the client after obtaining the cancellation operation of the target user's authorization request for the data, and responds to the authorization failure notification message by returning an error code to the client and terminating the acquisition of the first user information corresponding to the user attributes associated with the first questionnaire of the target user.
[0067] In one feasible embodiment, the login server generates the questionnaire identifier of the first questionnaire in response to the questionnaire registration request as follows: The login server stores the identity information of multiple data servers, which may include the Internet Protocol (IP) address of the data server, the company to which the data server belongs, etc.; the login server obtains the identity information of the data server in response to the questionnaire registration request. In a specific implementation, obtaining the identity information of the data server may include the following two methods: (1) when the data server sends a questionnaire registration request to the login server, it also carries its own identity information; (2) the login server sends an identity information request to the data server and receives the identity information based on the identity information request sent by the data server. Then, after obtaining the identity information of the data server, the login server verifies the identity information of the data server. If the identity information of the data server stored in the login server is consistent with the identity information of the data server obtained, it means that the identity verification is successful, and the login server generates the questionnaire identifier of the first questionnaire; if the identity information of the data server stored in the login server is inconsistent with the identity information of the data server obtained, it means that the identity verification is unsuccessful, and an error code is returned to the client and the generation of the questionnaire identifier of the first questionnaire is terminated.
[0068] In one feasible embodiment, the login server can save the questionnaire identifier, associated user attributes, and validity period of the first questionnaire to the blockchain network to prevent these information from being tampered with. The specific process of saving the questionnaire identifier, associated user attributes, and validity period to the blockchain network is similar to the process described above for saving the first questionnaire completed by the target user and the first user identifier to the blockchain network, and will not be repeated here.
[0069] It should be noted that there is no connection between the questionnaire identifier generated in the first questionnaire and the first user identifier of the target user.
[0070] S303. Send the target user's first user identifier to the client so that the client can send the completed first questionnaire and the target user's first user identifier to the data server.
[0071] In one feasible embodiment, after the login server sends the target user's first user identifier to the client, it receives a login request from the client for the target user. This login request includes user attributes associated with the first questionnaire. During the login process, the login server needs to first determine whether the first questionnaire's validity period has expired. If the first questionnaire's validity period has expired, it is understood that the first questionnaire has expired. At this time, the login server sends an error code to the client and terminates the acquisition of the third user information corresponding to the target user's user attributes associated with the first questionnaire. When the first questionnaire information is within the validity period, the third user information corresponding to the target user's user attributes associated with the first questionnaire can be acquired, and it is determined whether the first user information and the third user information are the same. When the login server determines that the third user information is the same as the first user information, the login server directly sends the target user's first user identifier and a prompt message to the client. The prompt message is used to indicate that the target user has completed the first questionnaire. When the login server determines that the third user information is different from the first user information, the login server can generate the target user's third user identifier after acquiring the third user information and send the third user identifier to the client. It should be noted that the process of generating the third user identifier is the same as the process of generating the first user identifier described above, and will not be repeated here.
[0072] For example, suppose user A's user information is A, corresponding to the user attribute associated with the first questionnaire. After the login server sends user A's user identifier A to the client, it receives a login request from the client for user B. This login request for user B includes the user attribute associated with the first questionnaire. During the login process, the login server needs to determine if the first questionnaire's time has exceeded the validity period. If the login server determines that the first questionnaire's time has not exceeded the validity period, it retrieves the user information B corresponding to the user attribute associated with the first questionnaire and determines whether user information A and user information B are the same. If both user information A and user information B have the nickname "XX", the login server can determine that user information A and user information B are the same. In this case, the login server directly sends user identifier A and a prompt message to the client, indicating that user A has completed the first questionnaire. When user information A and user information B are different, the login server generates user identifier B for user B according to the process of generating user A's user identifier A and sends user identifier B to the client. In this case, user identifier A and user identifier B are different.
[0073] S304. Receive a login request sent by the client for the target user. The login request includes user attributes associated with the second questionnaire. The login request is generated by the client after obtaining the questionnaire data of the second questionnaire from the data server.
[0074] The specific implementation of step S304 can be found in the specific implementation of step S201 in the above embodiments, and will not be repeated here.
[0075] S305. After obtaining the second user information corresponding to the user attributes associated with the second questionnaire for the target user, a second user identifier for the target user is generated. The second user identifier is different from the first user identifier.
[0076] In the specific implementation, the login server first sends a data authorization request to the client. This data authorization request is used to instruct the client to display the user attributes associated with the second questionnaire, the questionnaire identifier of the second questionnaire, and the validity period. After receiving the client's confirmation operation on the data authorization request from the second user, the server receives a notification message indicating that the authorization has been approved. The server responds to the authorization approval notification message, obtains the second user information corresponding to the user attributes associated with the second questionnaire of the target user, and randomly generates a second user identifier for the target user after obtaining the second user information corresponding to the user attributes associated with the second questionnaire. At this time, the second user identifier is different from the first user identifier.
[0077] S306. Send the target user's second user identifier to the client so that the client can send the completed second questionnaire and the target user's second user identifier to the data server.
[0078] The specific implementation of step S306 can be found in the specific implementation of step S203 in the above embodiments, and will not be repeated here.
[0079] In this embodiment, the login server receives a login request from a client for a target user. This login request is generated by the client after obtaining questionnaire data from a first questionnaire from a data server. After obtaining the first user information corresponding to the user attributes associated with the first questionnaire, the client generates a first user identifier for the target user. The first user identifier is then sent to the client, enabling the client to send the completed first questionnaire and the first user identifier to the data server. At this point, the data server only obtains the first user identifier and cannot obtain the user information, thus ensuring the privacy and security of the user completing the questionnaire. Furthermore, the login server can replicate the process of generating the first user identifier when the target user completes the first questionnaire to generate a second user identifier when the target user completes the second questionnaire. This ensures that the user identifier generated for different questionnaires is different, further guaranteeing the privacy and security of the user completing the questionnaire.
[0080] Based on the data processing system provided above, please refer to Figure 4 , Figure 4 This is a flowchart illustrating a data processing method provided in an embodiment of the present invention. The method can be executed by the aforementioned terminal device, and more specifically, by a client within the terminal device. The data processing method described in this embodiment may include the following steps S401-S404:
[0081] S401. When a triggering operation by the target user on the first questionnaire is detected, a data retrieval request for the first questionnaire is sent to the data server.
[0082] The triggering operation can be clicking on the first questionnaire or logging into the client, and the data retrieval request can include the questionnaire data of the first questionnaire.
[0083] S402, Receive the questionnaire data of the first questionnaire sent by the data server based on the data acquisition request.
[0084] In one feasible embodiment, the questionnaire data of the first questionnaire is stored in a data server, which can directly retrieve the questionnaire data based on the data retrieval request. In another feasible embodiment, the questionnaire data of the first questionnaire is stored in a blockchain network, and the data retrieval request may also include the hash value of the first questionnaire. The data server retrieves the questionnaire data of the first questionnaire from any node in the blockchain network based on the hash value of the first questionnaire. After the data server retrieves the questionnaire data of the first questionnaire, it sends the specific questionnaire data and the questionnaire identifier of the first questionnaire to the client. The questionnaire identifier of the first questionnaire can be randomly generated by the login server.
[0085] S403. Obtain the first user identifier of the target user generated by the login server.
[0086] In the specific implementation, after receiving the questionnaire data from the first questionnaire, the client needs to send a login request to the login server, causing the login server to respond to the login request and generate the first user identifier for the target user. Then, the client retrieves the first user identifier from the login server.
[0087] In one feasible embodiment, after the client sends a login request to the login server, the login request includes user attributes associated with the first questionnaire; the login server responds to the login request by sending a data authorization request to the client. This data authorization request includes the user attributes associated with the first questionnaire, the questionnaire identifier of the first questionnaire, and the validity period. Upon receiving the data authorization request, the client responds to the request and displays the user attributes associated with the first questionnaire, the questionnaire identifier of the first questionnaire, and the validity period in the client's authorization request interface, so that the target user can know the information requiring authorization and whether to authorize. When the user decides to authorize, the client obtains the target user's confirmation of the data authorization request; then, it sends an authorization approval notification message to the login server, which instructs the login server to generate the target user's first user identifier. When the login server generates the target user's first user identifier based on the authorization approval notification message and sends the first user identifier to the client, the client receives the target user's first user identifier sent by the login server.
[0088] S404. After receiving the target user's submission of the first questionnaire, send the completed first questionnaire and the target user's first user identifier to the data server.
[0089] In the specific implementation, the client can continuously or periodically detect whether the target user has submitted the first questionnaire. When the client detects that the target user has submitted the first questionnaire, it sends the completed first questionnaire and the target user's first user identifier to the data server, so that the data server can save the received completed first questionnaire and the target user's first user identifier for subsequent analysis.
[0090] In this embodiment, when the client detects a trigger operation by the target user on the first questionnaire, it sends a data acquisition request for the first questionnaire to the data server and receives the questionnaire data of the first questionnaire sent by the data server based on the data acquisition request; then it obtains the first user identifier of the target user generated by the login server; after obtaining the submission operation of the target user on the first questionnaire, it sends the completed first questionnaire and the first user identifier of the target user to the data server, and sends the first user identifier to the server to ensure the privacy and security of users who can fill out the questionnaire.
[0091] Based on the data processing method provided above, this application embodiment provides a more specific data processing scheme. Please refer to [link to relevant documentation]. Figure 5 The data processing scheme may include the following steps:
[0092] 1. When a questionnaire initiator wants to launch a questionnaire, they need to apply for a questionnaire identifier. In this case, the data server applies to the login server for a questionnaire identifier, which includes the validity date of the questionnaire to be applied for, the basic information of the user to be applied for (corresponding to the user attributes associated with the first questionnaire mentioned above), such as gender, age, etc., and a snapshot of the questionnaire content. At the same time, the login server will save the data server's application information (corresponding to the basic information of the user to be applied for).
[0093] 2. Log in to the server to authenticate the data server information of the questionnaire (corresponding to the identity information mentioned above). If the authentication is successful, the questionnaire identifier ID1 of the questionnaire (corresponding to the questionnaire identifier of the first questionnaire or the questionnaire identifier of the second questionnaire mentioned above) will be returned to the data server. If the authentication fails, an error code will be returned and the entire process will be terminated (i.e., the questionnaire identifier ID of the questionnaire will not be generated).
[0094] 3. The target user opens the questionnaire on the client (i.e., the client detects the target user's trigger action on the questionnaire).
[0095] 4. The client requests the specific data of the questionnaire content (corresponding to the questionnaire data mentioned above) from the data server.
[0096] 5. The data server returns the questionnaire content and ID1 based on the request sent by the client;
[0097] 6. After the client obtains the questionnaire content and ID1, the client sends a login request to the login server and requests to obtain the target user's basic information. The login request includes the questionnaire's ID1 and the user attributes associated with the questionnaire.
[0098] 7. At this point, the target user actively authorizes the client by scanning a QR code to log in. During the login process, if the login server determines whether the questionnaire has expired based on the questionnaire ID1 (i.e., whether the questionnaire's time has exceeded the validity period), and if the questionnaire has not expired, the login server displays the ID1, the questionnaire's validity period, the information that needs to be authorized to the client, and a snapshot of the questionnaire content to the target user; if the questionnaire ID1 has expired, the login server returns an error code and terminates the entire process.
[0099] 8. When the target user agrees to the authorization, the client obtains the target user's confirmation operation for the data authorization request, then obtains the user information of the target user's user attributes associated with the questionnaire, and generates user identifier ID2 (corresponding to the first user identifier mentioned above); if the target user does not agree, an error code is returned and the entire process is terminated.
[0100] 9. After generating ID2, the login server returns ID2 and user information of the target user, including user attributes associated with the questionnaire, to the client.
[0101] 10. Target users fill out the questionnaire and submit the completed questionnaire.
[0102] 11. Accordingly, after the client receives the target user's submission of the questionnaire (such as the first questionnaire mentioned above), it sends the completed first questionnaire and the target user's user identifier ID2 (such as the first user identifier mentioned above) to the data server. The data server receives and stores the completed first questionnaire and the target user's first user identifier.
[0103] In summary, the embodiments of this application have the following advantages: the login server and the data server are not from the same company, and a user has a different ID for different questionnaires. Furthermore, the data server cannot use a user ID from one questionnaire to retrieve other questionnaires by that user or information unrelated to the questionnaire, thus ensuring questionnaire privacy. This allows questionnaire respondents to fill in the answers they want due to the privacy protection of the questionnaire; and for the questionnaire initiator, the reliability of the basic information in the questionnaire results can be seen, and the reliability of the questionnaire results is also due to the honesty of the respondents.
[0104] For further details, please see Figure 6 This is a schematic diagram of the structure of a data processing device provided in an embodiment of this application. Figure 6 As shown, the data processing device can be applied to the above. Figure 2 or Figure 3 The corresponding embodiment is the login server; specifically, the data processing device can be a computer program (including program code) running on the login server, for example, the data processing device is an application software; the data processing device can be used to execute the corresponding steps in the method provided in the embodiments of this application.
[0105] The receiving module 601 is used to receive a login request for a target user sent by the client. The login request includes user attributes associated with the first questionnaire. The login request is generated by the client after obtaining the questionnaire data of the first questionnaire from the data server.
[0106] Processing module 602 is used to generate a first user identifier for the target user after obtaining the first user information corresponding to the user attributes associated with the first questionnaire of the target user.
[0107] The sending module 603 is used to send the first user identifier of the target user to the client, so that the client sends the completed first questionnaire and the first user identifier of the target user to the data server.
[0108] Optionally, the receiving module 601 is further configured to receive a login request for a target user sent by the client, the login request including user attributes associated with the second questionnaire, and the login request being generated by the client after obtaining the questionnaire data of the second questionnaire from the data server;
[0109] The processing module 602 is further configured to generate a second user identifier for the target user after obtaining the second user information corresponding to the user attributes associated with the second questionnaire of the target user, wherein the second user identifier is different from the first user identifier;
[0110] The sending module 603 is further configured to send the second user identifier of the target user to the client, so that the client sends the completed second questionnaire and the second user identifier of the target user to the data server.
[0111] Optionally, the sending module 603 is further configured to: send a data authorization request to the client, the data authorization request including the user attributes associated with the first questionnaire, the questionnaire identifier of the first questionnaire, and the validity period, the data authorization request being used to instruct the client to display the user attributes associated with the first questionnaire, the questionnaire identifier of the first questionnaire, and the validity period; and receive a notification message indicating that authorization has been granted after the client obtains the confirmation operation of the target user for the data authorization request.
[0112] The processing module 602 is further configured to respond to the authorization approval notification message and obtain the first user information corresponding to the user attributes of the target user associated with the first questionnaire.
[0113] Optionally, the receiving module 601 is further configured to receive a questionnaire registration request sent by the data server, the questionnaire registration request carrying questionnaire information of the first questionnaire, the questionnaire information including the validity period and user attributes associated with the first questionnaire.
[0114] The processing module 602 is further configured to generate a questionnaire identifier for the first questionnaire in response to the questionnaire registration request, and associate the questionnaire information of the first questionnaire with the questionnaire identifier;
[0115] The sending module 603 is also used to send the questionnaire identifier of the first questionnaire to the data server.
[0116] Optionally, the processing module 602 is specifically used for:
[0117] In response to the questionnaire registration request, the identity information of the data server is obtained;
[0118] The identity information of the data server is verified. If the verification is successful, a questionnaire identifier for the first questionnaire is generated.
[0119] Optionally, the receiving module 601 is further configured to: receive a login request for the target user sent by the client, the login request including user attributes associated with the first questionnaire;
[0120] The processing module 602 is further configured to: after obtaining the third user information corresponding to the user attributes of the target user associated with the first questionnaire, determine that the third user information is the same as the first user information;
[0121] The sending module 603 is further configured to send the first user identifier and prompt information of the target user to the client when the first questionnaire is within the valid time period, wherein the prompt information is used to prompt the target user that the first questionnaire has been filled out.
[0122] It is understood that the functions of each functional module of the data processing device in this embodiment can be specifically implemented according to the methods in the above method embodiments, and the specific implementation process can refer to the above method embodiments. Figure 2 or Figure 3 This will not be elaborated upon here.
[0123] For further details, please see Figure 7 This is a schematic diagram of the structure of a data processing device provided in an embodiment of this application. Figure 7As shown, the data processing device can be applied to the above. Figure 4 The terminal device in the corresponding embodiment; specifically, the data processing device may be a computer program (including program code) running on the terminal device, such as an application software; the data processing device may be used to execute the corresponding steps in the method provided in the embodiments of this application.
[0124] The sending module 701 is used to send a data acquisition request for the first questionnaire to the data server when a trigger operation of the target user on the first questionnaire is detected.
[0125] The receiving module 702 is used to receive the questionnaire data of the first questionnaire sent by the data server based on the data acquisition request;
[0126] Processing module 703 is used to obtain the first user identifier of the target user generated by the login server;
[0127] The sending module 701 is further configured to send the completed first questionnaire and the first user identifier of the target user to the data server after receiving the submission operation of the target user for the first questionnaire.
[0128] Optionally, the receiving module 702 is specifically used to receive a data authorization request sent by the login server, the data authorization request including the user attributes associated with the first questionnaire, the questionnaire identifier of the first questionnaire, and the validity period;
[0129] The processing module 703 is specifically used to respond to the data authorization request by displaying the user attributes associated with the first questionnaire, the questionnaire identifier of the first questionnaire, and the validity period;
[0130] The sending module 701 is specifically used to send an authorization approval notification message to the login server after obtaining the confirmation operation of the target user for the data authorization request. The authorization approval notification message is used to instruct the login server to generate the first user identifier of the target user.
[0131] The receiving module 702 is specifically used to receive the first user identifier of the target user sent by the login server.
[0132] It is understood that the functions of each functional module of the data processing device in this embodiment can be specifically implemented according to the methods in the above method embodiments, and the specific implementation process can refer to the above method embodiments. Figure 4 This will not be elaborated upon here.
[0133] Further, please see Figure 8 , Figure 8This is a schematic diagram of the structure of a server provided in an embodiment of this application. Specifically, the server can be as described above. Figure 2 or Figure 3 The login server in the corresponding embodiment. For example... Figure 8 As shown, the server may include a processor 801, an input device 802, an output device 803, and a memory 804. The processor 801, input device 802, output device 803, and memory 804 are connected via a bus 805. The memory 804 stores a computer program, which includes program instructions, and the processor 801 executes the program instructions stored in the memory 804.
[0134] In this embodiment, the processor 801 performs the following operations by running the executable program code in the memory 804:
[0135] The client receives a login request for a target user, the login request including user attributes associated with the first questionnaire, and the login request is generated by the client after obtaining the questionnaire data of the first questionnaire from the data server;
[0136] After obtaining the first user information corresponding to the user attributes of the target user associated with the first questionnaire, the first user identifier of the target user is generated.
[0137] The first user identifier of the target user is sent to the client, so that the client sends the completed first questionnaire and the first user identifier of the target user to the data server.
[0138] Optionally, the processor 801 is further configured to:
[0139] The client receives a login request for a target user, the login request including user attributes associated with the second questionnaire, and the login request is generated by the client after obtaining the questionnaire data of the second questionnaire from the data server;
[0140] After obtaining the second user information corresponding to the user attributes associated with the second questionnaire of the target user, a second user identifier of the target user is generated, which is different from the first user identifier;
[0141] The second user identifier of the target user is sent to the client, so that the client sends the completed second questionnaire and the second user identifier of the target user to the data server.
[0142] Optionally, the processor 801 is further configured to:
[0143] Send a data authorization request to the client. The data authorization request includes the user attributes associated with the first questionnaire, the questionnaire identifier of the first questionnaire, and the validity period. The data authorization request is used to instruct the client to display the user attributes associated with the first questionnaire, the questionnaire identifier of the first questionnaire, and the validity period.
[0144] Receive a notification message indicating that authorization has been granted after the client receives confirmation from the target user regarding the data authorization request;
[0145] In response to the authorization approval notification message, obtain the first user information corresponding to the user attributes of the target user associated with the first questionnaire.
[0146] Optionally, the processor 801 is further configured to:
[0147] The system receives a questionnaire registration request sent by the data server. The questionnaire registration request carries questionnaire information of the first questionnaire, including the validity period and user attributes associated with the first questionnaire.
[0148] In response to the questionnaire registration request, a questionnaire identifier for the first questionnaire is generated, and the questionnaire information of the first questionnaire is associated with the questionnaire identifier;
[0149] The questionnaire identifier of the first questionnaire is sent to the data server.
[0150] Optionally, the processor 801 is further configured to:
[0151] In response to the questionnaire registration request, the identity information of the data server is obtained;
[0152] The identity information of the data server is verified. If the verification is successful, a questionnaire identifier for the first questionnaire is generated.
[0153] Optionally, after sending the first user identifier of the target user to the client, the processor 801 is further configured to:
[0154] Receive a login request sent by the client for the target user, the login request including user attributes associated with the first questionnaire;
[0155] After obtaining the third user information corresponding to the user attributes of the target user associated with the first questionnaire, it is determined that the third user information is the same as the first user information;
[0156] When the first questionnaire is within the valid time period, the first user identifier and prompt information of the target user are sent to the client. The prompt information is used to remind the target user that the first questionnaire has been completed.
[0157] It should be understood that, in the embodiments of this application, the processor 801 may be a central processing unit (CPU), or it may be other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The general-purpose processor may be a microprocessor or any conventional processor.
[0158] The memory 804 may include read-only memory and random access memory, and provides instructions and data to the processor 801. A portion of the memory 804 may also include non-volatile random access memory.
[0159] The input device 802 may include a keyboard, etc., and inputs questionnaire information to the processor 801; the output device 803 may include a display, etc.
[0160] In specific implementations, the processor 801, input device 802, output device 803, and memory 804 described in the embodiments of this application can execute the implementation methods described in all the above embodiments, or they can execute the implementation methods described in the above devices, which will not be repeated here.
[0161] Further, please see Figure 9 , Figure 9 This is a schematic diagram of the structure of a terminal device provided in an embodiment of this application. For example... Figure 9 As shown, the terminal device may include a processor 901, an input device 902, an output device 903, and a memory 904. The processor 901, input device 902, output device 903, and memory 904 are connected via a bus 905. The memory 904 stores computer programs, which include program instructions, and the processor 901 executes the program instructions stored in the memory 904.
[0162] In this embodiment of the application, the processor 901 performs the following operations by running the executable program code in the memory 904:
[0163] When a trigger action by the target user on the first questionnaire is detected, a data retrieval request for the first questionnaire is sent to the data server;
[0164] Receive the questionnaire data of the first questionnaire sent by the data server based on the data acquisition request;
[0165] Obtain the first user identifier of the target user generated by the login server;
[0166] After receiving the target user's submission of the first questionnaire, the completed first questionnaire and the target user's first user identifier are sent to the data server.
[0167] Optionally, the processor 901 is specifically used for:
[0168] Receive a data authorization request sent by the login server, the data authorization request including the user attributes associated with the first questionnaire, the questionnaire identifier of the first questionnaire, and the validity period;
[0169] In response to the data authorization request, display the user attributes associated with the first questionnaire, the questionnaire identifier of the first questionnaire, and the validity period;
[0170] After receiving confirmation from the target user regarding the data authorization request, a notification message indicating authorization approval is sent to the login server. This notification message instructs the login server to generate a first user identifier for the target user.
[0171] Receive the first user identifier of the target user sent by the login server.
[0172] It should be understood that, in the embodiments of this application, the processor 901 may be a central processing unit (CPU), or it may be other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The general-purpose processor may be a microprocessor or any conventional processor.
[0173] The memory 904 may include read-only memory and random access memory, and provides instructions and data to the processor 901. A portion of the memory 904 may also include non-volatile random access memory.
[0174] The input device 902 may include a keyboard, etc., and inputs the completed questionnaire into the processor 901; the output device 903 may include a display, etc.
[0175] In specific implementations, the processor 901, input device 902, output device 903, and memory 904 described in the embodiments of this application can execute the implementation methods described in all the above embodiments, or they can execute the implementation methods described in the above devices, which will not be repeated here.
[0176] This application provides a computer-readable storage medium storing a computer program, the computer program including program instructions, which, when executed by a processor, can perform the steps performed in all the above embodiments.
[0177] This application also provides a computer program product or computer program, which includes computer instructions stored in a computer-readable storage medium. When the computer instructions are executed by the processor of a server or terminal device, the methods in all the above embodiments are performed.
[0178] Those skilled in the art will understand that all or part of the processes in the above embodiments can be implemented by a computer program instructing related hardware. The program can be stored in a computer-readable storage medium, and when executed, it can include the processes of the embodiments of the above methods. The storage medium can be a magnetic disk, optical disk, read-only memory (ROM), or random access memory (RAM), etc.
[0179] The above description discloses only one preferred embodiment of the present invention, and should not be construed as limiting the scope of the present invention. Those skilled in the art will understand that all or part of the processes of the above embodiments can be implemented, and equivalent changes made in accordance with the claims of the present invention are still within the scope of the invention.
Claims
1. A data processing method, characterized in that, Applied to a login server, the method includes: The system receives a login request from a client for a target user. The login request includes user attributes associated with the first questionnaire. The login request is generated by the client after obtaining the questionnaire data of the first questionnaire from the data server. The data server and the login server do not share data. The user attributes refer to the user information required to fill out the first questionnaire. After obtaining the first user information corresponding to the user attributes of the target user associated with the first questionnaire, the first user identifier of the target user is generated. The first user identifier of the target user is sent to the client, so that the client sends the completed first questionnaire and the first user identifier of the target user to the data server, and the data server is used to store the first questionnaire and the first user identifier; The system receives a login request for a target user sent by the client. The login request includes user attributes associated with the second questionnaire. The login request is generated by the client after obtaining the questionnaire data of the second questionnaire from the data server. After obtaining the second user information corresponding to the user attributes associated with the second questionnaire of the target user, a second user identifier of the target user is generated, which is different from the first user identifier; The second user identifier of the target user is sent to the client, so that the client sends the completed second questionnaire and the second user identifier of the target user to the data server, and the data server is used to store the second questionnaire and the second user identifier.
2. The method according to claim 1, characterized in that, Before generating the first user identifier of the target user, the method further includes: Send a data authorization request to the client. The data authorization request includes the user attributes associated with the first questionnaire, the questionnaire identifier of the first questionnaire, and the validity period. The data authorization request is used to instruct the client to display the user attributes associated with the first questionnaire, the questionnaire identifier of the first questionnaire, and the validity period. Receive a notification message indicating that authorization has been granted after the client receives confirmation from the target user regarding the data authorization request; In response to the authorization approval notification message, obtain the first user information corresponding to the user attributes of the target user associated with the first questionnaire.
3. The method according to claim 1, characterized in that, The method further includes: The system receives a questionnaire registration request sent by the data server. The questionnaire registration request carries questionnaire information of the first questionnaire, including the validity period and user attributes associated with the first questionnaire. In response to the questionnaire registration request, a questionnaire identifier for the first questionnaire is generated, and the questionnaire information of the first questionnaire is associated with the questionnaire identifier; The questionnaire identifier of the first questionnaire is sent to the data server.
4. The method according to claim 3, characterized in that, The step of generating the questionnaire identifier for the first questionnaire in response to the questionnaire registration request includes: In response to the questionnaire registration request, the identity information of the data server is obtained; The identity information of the data server is verified. If the verification is successful, a questionnaire identifier for the first questionnaire is generated.
5. The method according to claim 1, characterized in that, After sending the first user identifier of the target user to the client, the method further includes: Receive a login request sent by the client for the target user, the login request including user attributes associated with the first questionnaire; After obtaining the third user information corresponding to the user attributes of the target user associated with the first questionnaire, it is determined that the third user information is the same as the first user information; When the first questionnaire is within the valid time period, the first user identifier and prompt information of the target user are sent to the client. The prompt information is used to remind the target user that the first questionnaire has been completed.
6. A data processing method, characterized in that, Applied to a client, the method includes: When a trigger action by the target user on the first questionnaire is detected, a data retrieval request for the first questionnaire is sent to the data server; Receive the questionnaire data of the first questionnaire sent by the data server based on the data acquisition request; Obtain the first user identifier of the target user generated by the login server; the data server and the login server do not share data. After receiving the target user's submission of the first questionnaire, the completed first questionnaire and the target user's first user identifier are sent to the data server, which stores the first questionnaire and the first user identifier. The system receives a second user identifier for the target user generated by the login server. This second user identifier is generated by the login server after receiving a login request for the target user and obtaining second user information corresponding to the user attributes associated with the second questionnaire in the login request. The second user identifier is different from the first user identifier. The login request is generated by the client after obtaining questionnaire data from the data server for the second questionnaire. The user attributes refer to the user information required to complete the first questionnaire. The completed second questionnaire and the target user's second user identifier are sent to the data server, which stores the second questionnaire and the second user identifier.
7. The method according to claim 6, characterized in that, The step of obtaining the first user identifier of the target user generated by the login server includes: Receive a data authorization request sent by the login server, the data authorization request including the user attributes associated with the first questionnaire, the questionnaire identifier of the first questionnaire, and the validity period; In response to the data authorization request, display the user attributes associated with the first questionnaire, the questionnaire identifier of the first questionnaire, and the validity period; After receiving confirmation from the target user regarding the data authorization request, a notification message indicating authorization approval is sent to the login server. This notification message instructs the login server to generate a first user identifier for the target user. Receive the first user identifier of the target user sent by the login server.
8. A server, characterized in that, include: Memory, used to store computer programs; The processor invokes the computer program in the memory to execute the data processing method as described in any one of claims 1 to 5.
9. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program, the computer program including program instructions, which are loaded and executed by one or more processors to perform the data processing method as described in any one of claims 1 to 5 or to perform the data processing method as described in claim 6 or 7.
10. A computer program product, characterized in that, The computer program product medium stores computer instructions. When the computer instructions are executed by the processor, they perform the data processing method as described in any one of claims 1 to 5, or the data processing method as described in claim 6 or 7.
Citation Information
Patent Citations
Questionnaire data collection method, server and mobile terminal
CN107231358A
File identifier generation method and device, and server
CN107800819A
Data processing method and device and machine readable medium
CN110929183A
Business processing method, device and system
CN111726348A