File transmission method and device, electronic equipment, storage medium and program product
By displaying the file sending status and download progress in real time on the receiving terminal, the problem of low file transfer efficiency in the prior art is solved, and more efficient file transfer and better user experience are achieved.
Patent Information
- Application Number
- CN202311131821.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-09-01
- Publication Date
- 2025-03-04
AI Technical Summary
In the prior art, the file transfer efficiency between the sending terminal and the receiving terminal is low, and it is impossible to quickly transmit files from the sending terminal to the receiving terminal.
By displaying the file receiving page and file download page on the receiving terminal, and displaying the file sending status information and download progress information in real time, real-time reception and download of the receiving terminal when the sending terminal sends the file.
It improves file transfer efficiency between the sending terminal and the receiving terminal, and improves the user's experience and enthusiasm for transferring files.
Smart Images

Figure CN119561940A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the technical field of data transmission, and specifically to a file transmission method, device, electronic device, storage medium and program product, wherein the storage medium is a computer-readable storage medium and the program product is a computer program product. Background Art
[0002] With the development of data transmission technology, sending terminals and receiving terminals can implement various transmission services through data transmission technology, such as text message transmission service and file transmission service.
[0003] Among them, for file transmission services, the current general practice is: the sending terminal uploads the file to the server through a communication application. After the file upload is completed, the receiving terminal downloads the file from the server. This method cannot quickly transmit the file from the sending terminal to the receiving terminal.
[0004] In summary, there is currently a problem of low efficiency in file transmission between a sending terminal and a receiving terminal. Summary of the invention
[0005] The embodiments of the present application provide a file transmission method, device, electronic device, storage medium and program product, which can improve the file transmission efficiency between a sending terminal and a receiving terminal.
[0006] A file transmission method, applied to a receiving terminal, comprising:
[0007] Displaying a file receiving page, the file receiving page includes a receiving control for a target file, the target file includes a file sent by a sending terminal to a receiving terminal;
[0008] In response to a trigger operation on a receiving control, displaying a file download page of a target file, the file download page including file sending status information, the file sending status information indicating that the sending terminal is sending the target file;
[0009] When the sending terminal completes sending the target file, the download progress information of the target file is displayed on the file download page, and the download progress information indicates that part of the content of the target file has been downloaded.
[0010] Accordingly, an embodiment of the present application provides a file transmission device, including:
[0011] The first display unit may be used to display a file receiving page, the file receiving page including a receiving control for a target file, the target file including a file sent by a sending terminal to a receiving terminal;
[0012] A second display unit may be used to display a file download page of a target file in response to a trigger operation on a receiving control, wherein the file download page includes file sending status information, and the file sending status information indicates that the sending terminal is sending the target file;
[0013] The third display unit can be used to display download progress information of the target file on the file download page when the sending terminal completes sending the target file, and the download progress information indicates that part of the content of the target file has been downloaded.
[0014] Optionally, in some embodiments, the first display unit can be specifically used to display a file message display page corresponding to the target file when the sending terminal starts to send the target file, and the file message display page includes a file display control; in response to a trigger operation on the file display control, a file receiving page is displayed.
[0015] Optionally, in some embodiments, the second display unit can also be used to display a file termination reception page when the sending terminal stops sending the target file, and the file termination reception page includes a page return control and stop transmission indication information of the target file; in response to a trigger operation on the page return control, a file message display page is displayed, and a first file status indication mark is displayed on the file message display page, and the first file status indication mark indicates that the transmission of the target file has been terminated.
[0016] Optionally, in some embodiments, the file download page includes a cancel control; the second display unit can also be used to display the file receiving page in response to a trigger operation on the cancel control; and continue downloading the target file in response to a trigger operation on the receiving control on the file receiving page.
[0017] Optionally, in some embodiments, the third display unit can also be used to display a file suspension reception page when the receiving terminal pauses receiving the target file, and the file suspension reception page includes a continue receiving control; in response to a trigger operation on the continue receiving control, the target file continues to be downloaded.
[0018] Optionally, in some embodiments, the file abort reception page includes a return control; the third display unit can also be used to display a file message display page in response to a trigger operation on the return control; and a second file status indicator is displayed on the file message display page, and the second file status indicator indicates that the target file transmission is aborted.
[0019] Optionally, in some embodiments, the file transfer device may further include a download unit, which may be specifically used to obtain initial file download information of the target file in response to a trigger operation on a receiving control; request file blocks of the target file and associated file download information corresponding to the file blocks from a target server according to the initial file download information, so that the target server returns the file blocks and associated file download information; receive the associated file download information and the file blocks, and use the associated file download information as the initial file download information; return to execute the step of requesting file blocks and associated file download information corresponding to the file blocks from the target server according to the initial file download information, until each associated file download information is the initial file download information, to obtain multiple file blocks corresponding to the target file, and combine the multiple file blocks to obtain the target file.
[0020] Optionally, in some embodiments, the download unit can be specifically used to obtain the file identifier of the target file; send a file download request carrying the file identifier to the target server so that the target server returns initial file download information based on the file identifier; and receive the initial file download information of the target file.
[0021] Optionally, in some embodiments, the target server includes a cache server and a storage server; the download unit can be specifically used to send a file download request carrying a file identifier to the cache server, so that the cache server queries the initial file download information corresponding to the file identifier; when the initial file download information returned by the cache server is not received, send a file download request carrying the file identifier to the storage server, so that the storage server returns the initial file download information based on the file identifier; receive the initial file download information returned by the storage server.
[0022] Optionally, in some embodiments, the initial file download information includes file block download information and reference download information associated with the file block download information; the download unit can be specifically used to merge the file block download information and the reference download information to obtain merged download information; based on the merged download information, request the file block and the associated file download information corresponding to the file block from the target server.
[0023] Optionally, in some embodiments, the download unit can be specifically used to identify the current transmission status of the file block corresponding to the fused download information in the fused download information; when the current transmission status is the uploaded status, request the target server for the file block corresponding to the associated file download information and the associated file download information corresponding to the file block.
[0024] The present application also provides another file transmission method, which is applied to a sending terminal, including:
[0025] Displaying a file sending page, the file sending page includes a target file and a sending control for the target file;
[0026] In response to a trigger operation on a sending control, sending a target file to a receiving terminal so that the receiving terminal receives the target file when the sending terminal sends the target file;
[0027] A file transfer page for the target file is displayed, and the file transfer page includes a sending progress indicator for the target file.
[0028] Accordingly, the present application provides another file transmission device, comprising:
[0029] A fourth display unit may be used to display a file sending page, wherein the file sending page includes a target file and a sending control for the target file;
[0030] The sending unit may be used to send the target file to the receiving terminal in response to a trigger operation on the sending control, so that the receiving terminal receives the target file when the sending terminal sends the target file;
[0031] The fifth display unit may be used to display a file transfer page of the target file, where the file transfer page includes a sending progress indicator of the target file.
[0032] Optionally, in some embodiments, the file transfer page also includes a transmission status control control corresponding to a sending progress identifier; the fifth display unit can also be used to stop sending the target file to the receiving terminal in response to a trigger operation on the transmission status control control when the sending terminal sends the target file; and replace the sending progress identifier with a stop identifier for stopping sending the target file.
[0033] Optionally, in some embodiments, the fifth display unit may also be used to continue sending the target file to the receiving terminal in response to a trigger operation on the transmission status control control when the sending terminal stops sending the target file; and replace the stop mark with a sending progress mark.
[0034] Optionally, in some embodiments, the fifth display unit can also be used to display a resending page in response to a trigger operation on a transmission status control control when the stop time of sending the target file to the receiving terminal exceeds a preset time threshold, and the resending page includes a resending control; in response to a trigger operation on the resending control, the target file is resent to the receiving terminal.
[0035] Optionally, in some embodiments, the sending unit can be used to respond to a trigger operation on a sending control, split the target file to obtain at least one candidate file block; filter out at least one current file block from the candidate file blocks, and obtain associated file upload information corresponding to the current file block, the current file block being a file block that has not been uploaded; send the current file block and the associated file upload information to the target server, so that the target server sends the current file block of the target file to the receiving terminal based on the associated file upload information; return to execute the step of filtering out at least one current file block from the candidate file blocks until each candidate file block is a current file block, so that the target server sends each current file block of the target file to the receiving terminal.
[0036] Optionally, in some embodiments, the sending unit can be used to obtain preset file transfer information corresponding to the current file block, and detect the upload status information of the uploaded target file block in the candidate file block; based on the upload status information, the preset file transfer information is updated to obtain the file upload information corresponding to the current file block.
[0037] The present application also provides another file transfer method, which is applied to a target server and includes:
[0038] receiving at least one current file block of a target file and associated file upload information of the current file block sent by a sending terminal;
[0039] Based on the current file block and the associated file upload information, the preset file set is updated to obtain an updated file set;
[0040] When receiving the target file download information sent by the receiving terminal, filtering out the file block corresponding to the target file download information and the associated file download information corresponding to the file block from the preset file set;
[0041] The file block and the associated file download information are returned to the receiving terminal so that the receiving terminal can obtain the target file when the sending terminal sends the target file.
[0042] Accordingly, the present application provides another file transmission device, comprising:
[0043] A receiving unit, which may be used to receive at least one current file block of a target file and associated file upload information of the current file block sent by a sending terminal;
[0044] An updating unit, which can be used to update a preset file set based on the current file block and the associated file upload information to obtain an updated file set;
[0045] The screening unit may be used to screen out the file blocks corresponding to the target file download information and the associated file download information corresponding to the file blocks from the preset file set when receiving the target file download information sent by the receiving terminal;
[0046] The returning unit may be used to return the file block and the associated file download information to the receiving terminal, so that the receiving terminal can obtain the target file when the sending terminal sends the target file.
[0047] Optionally, in some embodiments, the target server includes a cache server and a storage server; the update unit can also be used to use the cache server to update the preset file set based on the current file block and associated file upload information to obtain an updated file set; use the cache server to send the current file block and associated file upload information to the storage server; use the storage server to receive the current file block and associated file upload information, and based on the current file block and associated file upload information, update the preset file data set to obtain an updated file data set.
[0048] Optionally, in some embodiments, the preset file set includes a preset file block subset and a preset transmission information subset; the update unit can be used to use the cache server to update the preset file block subset based on the current file block to obtain an updated file block subset; use the cache server to update the preset transmission information subset according to the associated file upload information to obtain an updated transmission information subset; generate an updated file set based on the updated file block subset and the updated transmission information subset.
[0049] Optionally, in some embodiments, the updated file data set includes a preset binding data subset and a preset upload information subset; the update unit can be specifically used to use a storage server to extract reference upload information corresponding to the current file block from the associated file upload information, and bind the current file block and the reference upload information to obtain file block binding data; use the storage server to update the preset binding data subset based on the file block binding data to obtain an updated binding data subset; use the storage server to update the preset upload information subset based on the associated file upload information to obtain an updated upload information subset; determine the updated file data set based on the updated upload information subset and the updated binding data subset.
[0050] In addition, an embodiment of the present invention further provides an electronic device, including a processor and a memory, wherein the memory stores an application program, and the processor is used to run the application program in the memory to implement the file transmission method provided by the embodiment of the present invention.
[0051] In addition, an embodiment of the present application further provides a computer-readable storage medium, which stores a computer program. The computer program is suitable for loading by a processor to execute any file transfer method provided in the embodiment of the present application.
[0052] In addition, an embodiment of the present application also provides a computer program product, including a computer program, which implements any file transfer method provided in the embodiment of the present application when the computer program is executed by a processor.
[0053] The present application can display a file receiving page, the file receiving page includes a receiving control for a target file, the target file includes a file sent by a sending terminal to a receiving terminal; in response to a trigger operation on the receiving control, a file download page for the target file is displayed, the file download page includes file sending status information, the file sending status information indicates that the sending terminal is sending the target file; when the sending terminal completes the sending of the target file, the download progress information of the target file is displayed on the file download page, the download progress information indicates that part of the content of the target file has been downloaded. Since the present application can respond to the trigger operation of the receiving control for the target file in the file receiving page, so that the receiving terminal receives the target file in real time during the process of the sending terminal sending the target file, so as to improve the file transmission efficiency between the sending terminal and the receiving terminal, so that the receiving terminal can display the file sending status information on the file download page of the target file, so as to improve the user's experience of file transmission; in this way, when the sending terminal completes the sending of the target file, the receiving terminal can complete the download of part of the content of the target file, so as to improve the file transmission efficiency between the sending terminal and the receiving terminal, so that the receiving terminal can display the download progress information indicating that part of the content of the target file has been downloaded, so as to improve the user's experience and enthusiasm of file transmission. BRIEF DESCRIPTION OF THE DRAWINGS
[0054] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings required for use in the description of the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For those skilled in the art, other drawings can be obtained based on these drawings without creative work.
[0055] Figure 1 It is a scenario diagram of the file transmission method provided in an embodiment of the present application;
[0056] Figure 2 1 is a flowchart of a file transmission method provided in an embodiment of the present application;
[0057] Figure 3a is a schematic diagram of a file message display page provided in an embodiment of the present application;
[0058] Figure 3b is a schematic diagram of a file receiving page provided in an embodiment of the present application;
[0059] Figure 3c It is a schematic diagram of a file termination receiving page provided in an embodiment of the present application;
[0060] Figure 3d 2 is a schematic diagram of a file message display page provided in an embodiment of the present application;
[0061] Figure 3e is a schematic diagram of a file download page provided in an embodiment of the present application;
[0062] Figure 3f 3 are schematic diagrams of a file message display page provided in an embodiment of the present application;
[0063] Figure 3g is a second schematic diagram of a file download page provided in an embodiment of the present application;
[0064] Figure 3h 4 is a schematic diagram of a file message display page provided in an embodiment of the present application;
[0065] Figure 3i It is a schematic diagram of a file receiving suspension page provided in an embodiment of the present application;
[0066] Figure 3j 5 is a schematic diagram of a file message display page provided in an embodiment of the present application;
[0067] Figure 3k 6 is a schematic diagram of a file message display page provided in an embodiment of the present application;
[0068] Figure 3m is a schematic diagram of a file expiration page provided in an embodiment of the present application;
[0069] Figure 3n is a schematic diagram of an expiration reminder page provided in an embodiment of the present application;
[0070] Figure 4 FIG2 is a second flow chart of a file transmission method provided in an embodiment of the present application;
[0071] Figure 5 3 are schematic diagrams of the process of the file transmission method provided in the embodiment of the present application;
[0072] Figure 6a is a schematic diagram of a file transfer page provided in an embodiment of the present application;
[0073] Figure 6b is a second schematic diagram of a file transfer page provided in an embodiment of the present application;
[0074] Figure 6c is a schematic diagram of a resending page provided in an embodiment of the present application;
[0075] Figure 6d 3 are schematic diagrams of a file transfer page provided in an embodiment of the present application;
[0076] Figure 6e 4 is a schematic diagram of a file transfer page provided in an embodiment of the present application;
[0077] Figure 6f 5 is a schematic diagram of a file transfer page provided in an embodiment of the present application;
[0078] Figure 6g 6 is a schematic diagram of a file transfer page provided in an embodiment of the present application;
[0079] Figure 6h is a schematic diagram of a candidate resending page provided in an embodiment of the present application;
[0080] Figure 7 4 is a flowchart of a file transmission method provided in an embodiment of the present application;
[0081] Figure 8 5 is a flowchart of a file transmission method provided by an embodiment of the present application;
[0082] Fig. 9 is a schematic diagram of a file transmission method provided in an embodiment of the present application;
[0083] Fig.10 It is a timing diagram of the file transmission method provided in the embodiment of the present application;
[0084] Fig.11 It is a schematic diagram of the target file sending process provided by the embodiment of the present application;
[0085] Fig.12 It is a comparison chart of the effects of the present application and the existing related technologies;
[0086] Fig.13 is a schematic diagram of the structure of a file transmission device provided in an embodiment of the present application;
[0087] Fig.14 is a second schematic diagram of the structure of a file transmission device provided in an embodiment of the present application;
[0088] Fig.15 3 are schematic diagrams of the structure of a file transmission device provided in an embodiment of the present application;
[0089] Fig.16 4 is a schematic diagram of the structure of a file transmission device provided in an embodiment of the present application;
[0090] Fig.17It is a schematic diagram of the structure of an electronic device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0091] The following will be combined with the drawings in the embodiments of the present application to clearly and completely describe the technical solutions in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by those skilled in the art without creative work are within the scope of protection of this application.
[0092] The present application provides a file transmission method, device, electronic device, computer readable storage medium and computer program product. The file transmission device can be integrated in an electronic device, which can be a server or a terminal.
[0093] Among them, the server can be an independent physical server, or a server cluster or distributed system composed of multiple physical servers, or a cloud server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, network acceleration services (Content Delivery Network, CDN), and big data and artificial intelligence platforms. The terminal can be a smart phone, tablet computer, laptop computer, desktop computer, smart speaker, smart watch, car terminal, etc., but is not limited to this. The terminal and the server can be directly or indirectly connected via wired or wireless communication, and this application does not limit this.
[0094] For example, see Figure 1 Taking the case where a file transmission device is integrated in an electronic device, where the electronic device is a receiving terminal, the receiving terminal displays a file receiving page, which includes a receiving control for a target file, and the target file includes a file sent by a sending terminal to the receiving terminal; in response to a trigger operation on the receiving control, a file download page for the target file is displayed, and the file download page includes file sending status information, and the file sending status information indicates that the sending terminal is sending the target file; when the sending terminal completes sending the target file, download progress information of the target file is displayed on the file download page, and the download progress information indicates that part of the content of the target file has been downloaded.
[0095] Among them, the file transfer method provided in the embodiment of the present application relates to data transmission technology. The file transfer method can respond to the trigger operation of the receiving control for the target file in the file receiving page, so that the receiving terminal can download the target file sent by the sending terminal, so that the receiving terminal can display the file sending status information on the file download page of the target file. In this way, when the sending terminal completes the sending of the target file, the receiving terminal completes the download of part of the content of the target file, so that the receiving terminal can display the download progress information indicating that part of the content of the target file has been downloaded. That is, the file transfer method can enable the receiving terminal to receive the target file in real time during the process of the sending terminal sending the target file, which can improve the file transfer efficiency between the sending terminal and the receiving terminal, and improve the user's experience and enthusiasm for file transmission.
[0096] It can be understood that in the specific implementation of the present application, related data such as target files, file blocks, file sending status information, download progress information, etc. are involved. When the following embodiments of the present application are applied to specific products or technologies, permission or consent is required, and the collection, use and processing of relevant data need to comply with relevant laws, regulations and standards of relevant countries and regions.
[0097] It should be noted that the description order of the following embodiments is not intended to limit the preferred order of the embodiments.
[0098] This embodiment will be described from the perspective of a file transmission device, which can be specifically integrated in a receiving terminal; wherein the receiving terminal may include a tablet computer, a laptop computer, a personal computer (PC), a wearable device, a virtual reality device or other smart devices that can acquire data.
[0099] A file transmission method, applied to a receiving terminal, comprising:
[0100] A file receiving page is displayed, the file receiving page includes a receiving control for a target file, the target file includes a file sent by a sending terminal to a receiving terminal; in response to a trigger operation on the receiving control, a file downloading page for the target file is displayed, the file downloading page includes file sending status information, the file sending status information indicates that the sending terminal is sending the target file; when the sending terminal completes sending the target file, download progress information of the target file is displayed on the file downloading page, the download progress information indicates that part of the target file has been downloaded.
[0101] like Figure 2 As shown, the specific process of the file transmission method is as follows: Step S201 to Step S203:
[0102] S201, displaying a file receiving page.
[0103] The target file includes a file sent by the sending terminal to the receiving terminal, and the file receiving page includes a receiving control for the target file.
[0104] The target file may include at least one file or at least one file. Specifically, the target file may include but is not limited to at least one of a text file, a picture file, a video file, and an audio file. When the target file includes at least one of a text file, a picture file, a video file, and an audio file, each file may include at least one file.
[0105] Of course, the target file may include at least two types of files. For example, the target file may include a text file and a video file. In this case, for example, the text file and the video file can be placed in the same file package such as a compressed package. Based on this, the sending terminal sends the target file to the receiving terminal in the form of a file package such as a compressed package. Then, the receiving terminal can download the target file in the form of a file package.
[0106] The receiving control may be a control for downloading and receiving a target file sent by a sending terminal. Specifically, the receiving control may be displayed in various forms on the file receiving page, for example, the receiving control may be displayed in the form of an icon, text, or a combination of an icon and text.
[0107] In step S201, the method of "displaying the file receiving page" can be: when the sending terminal starts to send the target file, the file message display page corresponding to the target file is displayed, and the file message display page includes a file display control; in response to a trigger operation on the file display control, the file receiving page is displayed.
[0108] The file message display page may be a page for displaying file-related content of the target file. The file-related content may include, but is not limited to, file-related messages and file-related controls of the target file. The file message display page may be an instant messaging page. For example, the receiving object in the receiving terminal may display the file message display page by logging into an instant messaging application. The receiving object may refer to an account of the instant messaging application logged into the receiving terminal.
[0109] The file display control may carry information indicating that the sending terminal starts to send the target file. The display form of the file display control in the file message display page may include icons and text.
[0110] With respect to the step of “displaying a file receiving page in response to a triggering operation on the file display control”, the receiving terminal may display the file receiving page in response to a click operation or a touch operation on the file display control.
[0111] S202: In response to a trigger operation on a receiving control, display a file download page for a target file.
[0112] The file download page includes file sending status information, and the file sending status information indicates that the sending terminal is sending the target file.
[0113] With respect to step S202, after displaying the file receiving page, the present application may respond to a triggering operation on a receiving control in the file receiving page and display a file download page for the target file.
[0114] Step S201 and step S202 are described with a specific example. For example, when the target file is a text file, the sending object in the sending terminal can log in to the instant messaging application, the sending object can refer to the account of the instant messaging application logged in to the sending terminal, and the receiving object in the receiving terminal can also log in to the instant messaging application in the receiving terminal. Then, the sending terminal sends the text file to the receiving object in the receiving terminal through the sending object.
[0115] When the sending terminal starts to send the text file, the receiving terminal displays the file message display page of the text file through the instant messaging application, such as Figure 3a As shown, the file message display page can be an instant messaging session page between the sending object and the receiving object. The object identifier 31 of the sending object is displayed in the instant messaging session page, and the display form of the object identifier can be an image. The instant messaging session page can include a file display control 32, and the display form of the file display control includes an icon of a text file and a file name of the text file. Figure 3a As shown, the file name of the text file can be "first quarter financial report data.key".
[0116] When an object such as a user triggers a file display control, the receiving terminal responds to the triggering operation on the file display control and displays a file receiving page, such as Figure 3b As shown, the file receiving page includes a text file receiving control 41, a candidate file icon 42 for the text file, a target return control 43, a file name of the text file such as "first quarter financial report data.key" and size attribute information of the text file such as "file size: 361MB".
[0117] Before the receiving control 41 is triggered, the object can click the target return control 43 to display the following information: Figure 3a The file message display page shown.
[0118] In an embodiment of the present application, after displaying the file download page of the target file, the sending terminal may stop sending the target file. Accordingly, the receiving terminal will respond to this situation. Specifically, when the sending terminal stops sending the target file, a file termination reception page is displayed, and the file termination reception page includes a page return control and stop transmission indication information of the target file; in response to a trigger operation on the page return control, a file message display page is displayed, and a first file status indication mark is displayed on the file message display page, and the first file status indication mark indicates that the transmission of the target file has been terminated.
[0119] There may be many reasons why the sending terminal stops sending the target file, such as network interruption, or the object operates the sending terminal to stop sending the target file, etc., wherein the object operates the sending terminal, such as the sending terminal suspending sending the target file, or the sending terminal checking and killing the instant messaging application.
[0120] Furthermore, when the sending terminal stops sending the target file and the stop time exceeds a preset time threshold, a file reception termination page may be displayed.
[0121] The display form of the page return control may be an icon or text. The stop transmission instruction information may refer to information that the sending terminal stops sending the target file.
[0122] Here, the target file is a text file. For example, when the sending terminal stops sending the text file, the application displays a file receiving termination page, such as Figure 3c As shown in FIG. 1 , the text termination receiving page may include a page return control 51, a text file name such as “first quarter financial report data.key”, text file size attribute information such as “file size: 361MB”, and text file stop transmission instruction information such as “the other party stops sending”. Then, when the object clicks the page return control, the receiving terminal may respond to the click operation on the page return control by displaying a file message display page, and then, as shown in FIG. Figure 3d As shown, the first file status indicator 61 is displayed on the file message display page, and the display form of the first file status indicator 61 can be an icon. Among them, the first file status indicator 61 can be displayed on the file display control 32.
[0123] In an embodiment of the present application, after displaying the file download page of the target file, the download of the target file can be canceled, and then the download of the target file can be continued. For example, the file download page includes a cancel control. On this basis, the receiving terminal can display the file receiving page in response to a trigger operation on the cancel control; and continue to download the target file in response to a trigger operation on the receiving control on the file receiving page.
[0124] It can be understood here that when the receiving terminal responds to the trigger operation for the cancel control and displays the file receiving page, this situation indicates that the receiving terminal has canceled downloading the target file.
[0125] Here we take the target file as a text file as an example. Figure 3e As shown in FIG. 1 , the file download page includes file sending status information such as “the other party is sending a file”, a status icon 71 corresponding to the file sending status information, and a cancel control 72, wherein the status icon 71 may be a dynamic icon. The cancel control may be displayed in the form of a text mark such as “Cancel download” on the file download page. When the object clicks the cancel control, the receiving terminal cancels the download of the text file and displays the following information: Figure 3b Then, when the object clicks the receiving control 41 in the file receiving page, the receiving terminal can continue to download the text file in response to the triggering operation on the receiving control.
[0126] Furthermore, when a click operation is performed on the receiving control 41 in the file receiving page, the receiving terminal obtains the expiration status of the target file in response to the click operation on the receiving control 41, wherein the expiration status may refer to whether the target file is expired; when the expiration status indicates that the target file is not expired, the text file continues to be downloaded; when the expiration status indicates that the target file is expired, the file expiration page is displayed. Figure 3m As shown, the file expiration page includes file expiration indication information such as “file has expired” and a target page return control 131 .
[0127] Then, when the target page return control 131 is clicked, the receiving terminal can display a file message display page in response to the click operation on the target page return control 131, wherein the file message display page can also include a first file status indicator, and the first file status indicator indicates that the target file transmission is terminated, as described above. Figure 3d shown.
[0128] The first file status indicator can be displayed on the file display control. When the file display control in the file message display page is clicked, an expiration reminder page is displayed, such as Figure 3n As shown in FIG. 1 , the expiration prompt page may include expiration prompt information such as “the file has expired” and a confirmation control 141 corresponding to the expiration prompt information. When the confirmation control 141 is triggered, the receiving terminal may hide the expiration prompt page in response to the triggering operation on the confirmation control, and display the following information: Figure 3d The file message display page shown.
[0129] In such Figure 3eThe file download page shown may also include a candidate return control 73; before the receiving terminal cancels downloading the text file, when the subject clicks the candidate return control 73, the file message display page is displayed. Figure 3f As shown, the third file status indicator 81 is displayed on the file message display page, and the third file status indicator 81 indicates that the target file is being sent. The third file status indicator 81 can be displayed on the file display control 32. The third file status indicator 81 can be displayed in the form of an icon, specifically a dynamic icon.
[0130] After displaying the file receiving page, the receiving terminal can download the target file. Specifically, the receiving terminal can download the target file in the following manner as shown in steps S2021 to S2024:
[0131] S2021. In response to a trigger operation on a receiving control, initial file download information of a target file is obtained.
[0132] Regarding step S2021, it can be understood here that when the object triggers the receiving control, the receiving terminal displays the file download page of the target file on the display interface. At the same time, the receiving terminal can obtain the initial file download information of the target file to download the target file.
[0133] The initial file download information may refer to information used to download the target file. Specifically, the initial file download information may include but is not limited to at least one of a file block identifier of a file block in the target file, sequence information of the file block, file block download information of the file block in the target file, and reference download information associated with the file block download information.
[0134] The file block may refer to the file content used to constitute the target file; when the sending terminal divides the target file, the candidate file block can be obtained, and then the sending terminal can send the candidate file block so that the receiving terminal can download the candidate file block as the file block. The file block download information may include but is not limited to at least one of the transmission status information of the file block and the sequence information of the file block. The reference download information may refer to information used to download the file block in combination with the file block download information, wherein the reference download information may include but is not limited to at least one of the reference transmission status information of the file block and the reference sequence information of the file block.
[0135] For step S2021, the method of the step "obtaining initial file download information of the target file" can be: obtaining the file identifier of the target file; sending a file download request carrying the file identifier to the target server, so that the target server returns the initial file download information based on the file identifier; receiving the initial file download information of the target file.
[0136] The step of "obtaining the file identifier of the target file" may be performed by: obtaining a file message of the target file sent by the sending terminal; and extracting the file identifier of the target file from the file message.
[0137] Specifically, the step of "obtaining the file message of the target file sent by the sending terminal" can be: sending a message acquisition request to the message server so that the message server returns the file message corresponding to the message acquisition request, and the file message is the message sent by the sending terminal to the message server; receiving the file message.
[0138] Among them, for the file message, it can be understood here that when the receiving terminal receives the file message, the file display control corresponding to the file message will be displayed in the displayed file message display page, as shown in the following figure: Figure 3a A file presentation control 32 is shown.
[0139] The target server may include a cache server and a storage server. The cache server may refer to a server that temporarily stores data such as a target file within a preset time. The cache server may be a server corresponding to the geographical area where the receiving terminal is located. The storage server may refer to a server that can permanently store data.
[0140] The present application can cache the target file and the related information of the target file in the cache server, and can also cache the target file and the related information of the target file in the storage server. Based on this, the step of "sending a file download request carrying a file identifier to the target server so that the target server returns the initial file download information based on the file identifier" can be: sending a file download request carrying a file identifier to the cache server so that the cache server queries the initial file download information corresponding to the file identifier; when the initial file download information returned by the cache server is not received, sending a file download request carrying a file identifier to the storage server so that the storage server returns the initial file download information based on the file identifier; receiving the initial file download information returned by the storage server.
[0141] It is understandable here that the cache server corresponding to the geographical area where the receiving terminal is located may not have the initial file download information and the target file. Based on this, the receiving terminal requests the storage server for the initial file download information.
[0142] It can be understood here that the cache server can only store the interaction data between the receiving terminal and the sending terminal in the geographical area where the cache server is located, the interaction data such as the target file and the related information of the target file such as the initial file download information; the receiving terminal and the sending terminal located in the same geographical area can correspond to the same cache server, and the receiving terminal and the sending terminal located in different geographical areas can correspond to different cache servers, and different cache servers can store different interaction data.
[0143] When the cache server receives the interactive data between the receiving terminal and the sending terminal, the cache server can send the interactive data to the storage server so that the storage server can store the interactive data. Based on this, when the receiving terminal does not obtain the initial file download information returned by the cache server corresponding to the geographical area where the receiving terminal is located, the receiving terminal requests the initial file download information from the storage server.
[0144] S2022. Request the target server for the file block and the associated file download information corresponding to the file block according to the initial file download information, so that the target server returns the file block and the associated file download information.
[0145] The initial file download information includes file block download information and reference download information associated with the file block download information. Based on this, after obtaining the initial file download information, the present application can request the target server for the file blocks of the target file and the associated file download information corresponding to the file blocks. Specifically, for step S2022, the method of "requesting the target server for the file blocks of the target file and the associated file download information corresponding to the file blocks according to the initial file download information" can be: fusing the file block download information and the reference download information to obtain the fused download information; based on the fused download information, requesting the target server for the file blocks of the target file and the associated file download information corresponding to the file blocks.
[0146] Among them, the step of "merging the file block download information and the reference download information to obtain fused download information" can be: determining, in the sequence information included in the file block download information, target sequence information that is the same as the reference sequence information included in the reference download information; determining, in the transmission status information of the file block download information, target transmission status information corresponding to the target sequence information; fusing the target transmission status information with the reference transmission status information in the reference download information to obtain fused transmission status information, and generating fused download information based on the fused transmission status information.
[0147] The fused transmission state information may be used as fused download information; or the fused state information and the target sequence information may be used as fused download information.
[0148] For example, the sending terminal may divide the target file into 256 candidate file blocks, and then upload the candidate file blocks to the target server according to the sequence information of each candidate file block in the target file. When the candidate file block has been successfully uploaded to the target server, the transmission status information corresponding to the candidate file block may be 1; when the file block has not been successfully uploaded to the target server, the transmission status information corresponding to the candidate file block may be 0.
[0149] Accordingly, when the receiving terminal requests a file block from the candidate file block, the file block download information may include the sequence information and transmission status information of each of the 256 file blocks. The reference download information may include the reference sequence information and reference transmission status information of each of the 129th to 256th file blocks. Based on this, the present application may determine that in the sequence information in the file block download information, the target sequence information that is the same as the reference sequence information in the reference download information is the 129th to 256th.
[0150] Then, accordingly, in the transmission status information of the file block download information, the target transmission status information corresponding to the target sequence information is the transmission status information of the 129th to 256th file blocks. Based on this, the candidate transmission status information of the 129th to 256th file blocks in the reference download information and the transmission status information of the 129th to 256th file blocks in the file block download information can be added to obtain the fused download information.
[0151] After the file block download information and the reference download information are merged to obtain the merged download information, the present application can request the file block and the associated file download information corresponding to the file block from the target server. Specifically, the method of "requesting the file block and the associated file download information corresponding to the file block from the target server based on the merged download information" can be: identifying the current transmission status of the file block corresponding to the merged download information in the merged download information; when the current transmission status is the uploaded status, requesting the file block corresponding to the associated file download information and the associated file download information corresponding to the file block from the target server.
[0152] The uploaded status may refer to a status that has been successfully uploaded to the target server.
[0153] When the fused transmission status information in the fused download information is 1, it can be determined that the current transmission status of the file block is the uploaded status; when the fused transmission status information in the fused download information is 0, it can be determined that the current transmission status of the file block is the unuploaded status.
[0154] S2023: Receive associated file download information and file blocks, and use the associated file download information as initial file download information.
[0155] The server may return at least one file block at a time; when the server returns multiple file blocks at a time, the receiving terminal may receive multiple file blocks in parallel.
[0156] S2024. Return to the step of requesting the target server for file blocks and associated file download information corresponding to the file blocks according to the initial file download information, until each associated file download information is the initial file download information, to obtain multiple file blocks corresponding to the target file, and combine the multiple file blocks to obtain the target file.
[0157] In step S2024, the step of "combining multiple file blocks to obtain a target file" may be performed by splicing the file blocks based on the sequence information of the file blocks to obtain the target file.
[0158] S203: When the sending terminal completes sending the target file, the download progress information of the target file is displayed on the file download page.
[0159] The download progress information indicates that part of the content of the target file has been downloaded.
[0160] It can be understood here that since the sending terminal can receive file blocks while sending file blocks, based on this, when the sending terminal completes the sending of the target file, the download progress information displayed in the file download page indicates that part of the content of the target file has been downloaded.
[0161] Specifically, the target file is a text file. When the sending terminal completes sending the text file, the receiving terminal has already downloaded part of the target file. Figure 3g As shown, the download progress information may include a progress bar 91 and progress indication information corresponding to the progress bar such as “receiving file”. The progress bar may be a circular progress bar.
[0162] like Figure 3g As shown, the file download page may also include a candidate page return control 92. When the object can click the candidate page return control 92, the receiving terminal can respond to the click operation on the candidate page return control 92 and display the file message display page, such as Figure 3h As shown, the fourth file status indicator 101 may be displayed in the file message display page, and the fourth file status indicator 101 indicates that the receiving terminal is downloading the target file. The fourth file status indicator 101 may be displayed on the file display control 32.
[0163] In an embodiment of the present application, after the download progress information of the target file is displayed on the file download page, the target file can continue to be downloaded when the receiving terminal pauses receiving the target file. Specifically, when the receiving terminal pauses receiving the target file, the receiving terminal can display a file suspension reception page, which includes a continue reception control; in response to a trigger operation on the continue reception control, the target file continues to be downloaded.
[0164] The receiving terminal may suspend receiving the target file due to a network interruption or due to an object operation triggering the receiving terminal to suspend receiving the target file. When the receiving terminal suspends receiving the target file due to an object operation triggering the receiving terminal to suspend receiving the target file, the file download page may further include a pause control. Based on this, before the step of "displaying the file suspension receiving page", the receiving terminal may suspend receiving the target file in response to the triggering operation on the pause control and display the file suspension receiving page.
[0165] After the receiving terminal displays the file abort receiving page, the present application can display the file abort receiving page. The file abort receiving page may include not only the continue receiving control but also the return control. Based on this, after the step of "displaying the file abort receiving page", the receiving terminal may also return to display the file display page. Specifically, the receiving terminal may display the file message display page in response to the trigger operation for the return control; and display the second file status indicator on the file message display page, which indicates that the target file has aborted transmission.
[0166] The display form of the return control in the file stop receiving page may include an icon or a text mark.
[0167] Regarding the file receiving suspension page, the target file is a text file as an example. Figure 3g As shown, the file download page may also include a pause control, and the progress bar 91 is set on the pause control. The receiving terminal responds to the trigger operation for the pause control, pauses receiving the text file, and displays the file suspension receiving page. Figure 3i As shown, the file suspension receiving page may include a return control 111 and a continue receiving control 112 .
[0168] Before the object triggers the continue receiving control 112, when the object can trigger the return control, in this case, the receiving terminal can display the file message display page in response to the trigger operation on the return control 111; Figure 3j The second file status indicator 121 is displayed on the file message display page. When the object triggers the continue receiving control, the receiving terminal can continue downloading the text file in response to the triggering operation on the continue receiving control.
[0169] It should be noted here that when the receiving terminal suspends receiving the target file due to network interruption, the file receiving suspension page displayed by the receiving terminal may also be as follows: Figure 3i In this case, when the return control 111 of the file stop receiving page is clicked, the receiving terminal can display the file message display page, such as Figure 3k As shown, the file message display page displays the second file status indicator and file receiving status information such as "receiving interrupted". The file receiving status information may refer to the receiving status information of the receiving terminal for the target file.
[0170] Furthermore, when the receiving terminal suspends receiving the target file due to a network interruption or a triggering operation on the pause control, the receiving terminal obtains the candidate deadline status of the target file in response to a click operation on the continue receiving control 112 in the file suspension receiving page, wherein the candidate deadline status may refer to whether the target file is expired; when the candidate deadline status indicates that the target file is not expired, the text file continues to be downloaded; when the candidate deadline status indicates that the target file is expired, the following is displayed: Figure 3m The File Expiration page shown.
[0171] Then, when the target page return control 131 is clicked, the receiving terminal may display the following in response to the click operation on the target page return control 131: Figure 3k The message display page shown in FIG. 1 shows that the second file status indicator can be displayed on the file display control. When the file display control is clicked, the following is displayed: Figure 3n The expiration reminder page shown.
[0172] Further, when the sending terminal completes sending the target file and the receiving terminal has completely received the target file, the receiving terminal may display a file message display page. The file message display page may be as follows: Figure 3a shown.
[0173] Regarding steps S201 to S203, the target file is a text file as an example for further explanation. Figure 4 As shown, specifically as shown in steps S1 to S17:
[0174] S1. When the sending terminal starts to send the target file, the file message display page corresponding to the target file is displayed.
[0175] Among them, the file message display page includes a file display control.
[0176] S2. In response to a triggering operation on a file display control in a file message display page, a file receiving page is displayed.
[0177] The file receiving page includes a receiving control for the target file.
[0178] S3. In response to a trigger operation on a receiving control in the file receiving page, determine whether the sending terminal has completed sending the target file.
[0179] When the sending terminal has not completed sending the target file, step S4 is executed; when the sending terminal has completed sending the target file, step S7 is executed.
[0180] S4. Display a file download page including file sending status information.
[0181] The file sending status information indicates that the sending terminal is sending the target file.
[0182] S5. Determine whether the sending terminal stops sending the target file.
[0183] When the sending terminal stops sending the target file and the stop time exceeds the preset time threshold, step S6 is executed; when the sending terminal does not stop sending the target file and the sending terminal completes sending the target file, step S7 is executed.
[0184] S6. Displaying a file receiving termination page including transmission stop instruction information.
[0185] S7. Display download progress information of the target file on the file download page.
[0186] The download progress information indicates that part of the content of the target file has been downloaded.
[0187] S8. Determine whether to suspend receiving the target file.
[0188] When the receiving of the target file is suspended, step S9 is executed; when the receiving of the target file is not suspended, the receiving of the target file continues.
[0189] S9. Display a file suspension receiving page including a continue receiving control.
[0190] S10. In response to a trigger operation on a continue receiving control, a candidate deadline status of a target file is obtained.
[0191] S11. Determine whether the candidate deadline status indicates that the target file has expired.
[0192] When the candidate deadline status indicates that the target file has not expired, step S12 is executed; when the candidate deadline status indicates that the target file has expired, step S17 is executed.
[0193] S12. Continue downloading the target file.
[0194] S13: Determine whether the receiving terminal actively stops receiving the target file.
[0195] When the receiving terminal responds to the triggering operation of the cancel control in the file download page, it is determined that the receiving terminal actively stops receiving the target file. In this case, step S14 is executed.
[0196] When the receiving terminal is in a network interruption state, it is determined that the receiving terminal passively stops receiving the target file. In this case, the process returns to step S5.
[0197] S14. Display the file receiving page.
[0198] S15. In response to a triggering operation on a receiving control on a file receiving page, obtaining the expiration status of the target file.
[0199] S16: Determine whether the expiration status indicates that the target file has expired.
[0200] When the expiration status indicates that the target file has expired, execute step S17; when the expiration status indicates that the target file has not expired, return to execute step S5.
[0201] S17. Display the file expiration page.
[0202] The present application can display a file receiving page, the file receiving page includes a receiving control for a target file, the target file includes a file sent by a sending terminal to a receiving terminal; in response to a trigger operation on the receiving control, a file download page for the target file is displayed, the file download page includes file sending status information, the file sending status information indicates that the sending terminal is sending the target file; when the sending terminal completes the sending of the target file, the download progress information of the target file is displayed on the file download page, the download progress information indicates that part of the content of the target file has been downloaded. Since the present application can respond to the trigger operation of the receiving control for the target file in the file receiving page, so that the receiving terminal receives the target file in real time during the process of the sending terminal sending the target file, so as to improve the file transmission efficiency between the sending terminal and the receiving terminal, so that the receiving terminal can display the file sending status information on the file download page of the target file, so as to improve the user's experience of file transmission; in this way, when the sending terminal completes the sending of the target file, the receiving terminal can complete the download of part of the content of the target file, so as to improve the file transmission efficiency between the sending terminal and the receiving terminal, so that the receiving terminal can display the download progress information indicating that part of the content of the target file has been downloaded, so as to improve the user's experience and enthusiasm of file transmission.
[0203] According to the method described in the above embodiment, the following is further described in detail with examples.
[0204] In this embodiment, the file transmission device is specifically integrated into an electronic device, and the electronic device is a sending terminal.
[0205] like Figure 5 As shown, a file transmission method, the specific process is as follows: step S301 to step S303:
[0206] S301, displaying a file sending page.
[0207] The file sending page includes a target file and a sending control for the target file. The sending control may refer to a control for sending the target file.
[0208] In step S301, the method of "displaying the file sending page" can be: displaying the file transfer page, the file transfer page includes a file selection control; responding to a trigger operation on the file selection control; obtaining multiple candidate files; and displaying the file sending page in response to a selection operation on the candidate files.
[0209] It can be understood here that when the sending terminal responds to the selection operation on the candidate files, the sending terminal selects the target file from the candidate files and displays the file sending page.
[0210] S302: In response to a trigger operation on a sending control, a target file is sent to a receiving terminal, so that the receiving terminal receives the target file when the sending terminal sends the target file.
[0211] For step S302, the present application can set the trigger operation for the sending control as a time countdown. When the time countdown for the trigger control ends, the sending terminal responds to the trigger operation for the sending control and sends the target file to the receiving terminal, so that the receiving terminal receives the target file when the sending terminal sends the target file.
[0212] Alternatively, for step S302, a candidate object such as a user may click on a send control, and in response, the sending terminal may send a target file to the receiving terminal in response to the triggering operation on the send control, so that the receiving terminal receives the target file when the sending terminal sends the target file.
[0213] In an embodiment of the present application, the sending terminal may directly send the target file to the receiving terminal, or, while the sending terminal is sending the target file to the target server, the receiving terminal may download the target file from the target server.
[0214] In the case where the receiving terminal downloads the target file from the target server while the sending terminal is sending the target file to the target server, in step S302, the specific method of the step "sending the target file to the receiving terminal in response to the triggering operation on the sending control" can be as shown in steps S3021 to S3024:
[0215] S3021. In response to a trigger operation on a sending control, split the target file to obtain at least one candidate file block.
[0216] In step S3021, the step of "splitting the target file to obtain at least one candidate file block" may be: obtaining preset splitting parameters; and splitting the target file based on the preset splitting parameters to obtain at least one candidate file block.
[0217] The preset splitting parameter may refer to a parameter for splitting the target file into at least one candidate file block. The preset splitting parameter may include the size of the candidate file block to be split. For example, the preset splitting parameter may be set to 1MB, and the present application may split the target file into candidate file blocks of 1MB in size according to the size of 1MB.
[0218] S3022. Filter out at least one current file block from the candidate file blocks, and obtain associated file upload information corresponding to the current file block.
[0219] The current file block is a file block that has not been uploaded. Specifically, the current file block is a file block that has been uploaded to the target server.
[0220] After the target file is split into candidate file blocks, the current file block can be screened out from the candidate file blocks to upload the current file block to the target server.
[0221] It can be understood here that after splitting the target file into candidate files, the candidate sequence information corresponding to each candidate file block can be obtained. Based on this, in step S3022, the step of "screening out at least one current file block from the candidate file blocks" can be: based on the candidate sequence information, at least one current file block is screened out from the candidate file blocks.
[0222] For example, at least one candidate file block may be used as the current file block in sequence according to the candidate sequence information. For example, the third candidate file block and the fourth candidate file block may be used as the current file block.
[0223] In step S3022, the method of the step "obtaining the associated file upload information corresponding to the current file block" can be: obtaining the preset file transfer information corresponding to the current file block, and detecting the upload status information of the uploaded target file block in the candidate file block; based on the upload status information, updating the preset file transfer information to obtain the associated file upload information corresponding to the current file block.
[0224] The preset file transmission information may refer to transmission information corresponding to a preset target file. Specifically, the preset file transmission information may include preset upload status information and candidate sequence information corresponding to each candidate file block in a preset number of candidate file blocks.
[0225] Among them, the method of the step "detecting the upload status information of the target file block that has been uploaded in the candidate file block" can be: obtaining the file block upload record; in the file block upload record, querying the file block sequence information of the target file block that has been uploaded in the candidate file block; when the file block sequence information exists, extracting the upload status information corresponding to the file block sequence information in the file block upload record, and using the upload status information corresponding to the file block sequence information as the upload status information of the target file block.
[0226] Among them, the step of "updating the preset file transfer information based on the upload status information to obtain the associated file upload information corresponding to the current file block" can be: replacing the preset upload status information in the preset file transfer information with the upload status information to obtain the associated file upload information corresponding to the current file block.
[0227] Accordingly, since the upload status information may only replace part of the preset upload status information, for example, the candidate file blocks include 10, among which the first 5 candidate file blocks with sequence information are the uploaded target file blocks, then only these 5 target file blocks have upload status information, and correspondingly, only the upload status information of these 5 target file blocks can replace the preset upload status information corresponding to these 5 target file blocks. Based on this, the associated file upload information may include the associated upload information corresponding to the candidate file blocks, and the associated upload information may include the upload status information and the candidate sequence information, or include the upload status information, the preset status information and the candidate sequence information.
[0228] The step of "obtaining the associated file upload information corresponding to the current file block" is explained here with an example. For example, the present application may use bit states 0 and 1 to represent the upload status information and the preset status information. When the target file is not uploaded, the preset upload status information may be set to 0. When there is an uploaded target file block in the candidate file block, the preset upload information corresponding to the target file block may be replaced by the upload status information corresponding to the target file block. For example, the preset upload information 0 corresponding to the target file block may be replaced by the upload status information 1 corresponding to the target file block, so as to update the preset file transfer information and obtain the associated file upload information.
[0229] S3023: Send the current file block and the associated file upload information to the target server, so that the target server sends the current file block of the target file to the receiving terminal based on the associated file upload information.
[0230] Among them, after the sending terminal sends at least one current file block and associated file upload information to the target server, when the target server receives the current file block and associated file upload information, the target server can store the current file block and associated file upload information to facilitate the receiving terminal to download from the target server.
[0231] S3024: Return to the step of selecting at least one current file block from the candidate file blocks until each candidate file block is a current file block, so that the target server sends each current file block of the target file to the receiving terminal.
[0232] S303: Display the file transfer page of the target file.
[0233] The file transfer page includes a target file sending progress indicator, which can indicate the progress of the target file being sent by the sending terminal.
[0234] The file transfer page may be a candidate instant messaging session page. The candidate instant messaging session page may be an instant messaging session page between a sending object in a sending terminal and a receiving object in a receiving terminal. The sending object and the receiving object may display the instant messaging session page through an instant messaging application.
[0235] The file transfer page may further include a transfer status control widget corresponding to the transfer progress indicator. Specifically, the transfer progress indicator may be displayed on the transfer status control widget.
[0236] After the step of "displaying the file transfer page of the target file", the present application can also stop sending the target file to the receiving terminal. Specifically, when the sending terminal sends the target file, in response to the trigger operation of the transmission status control control, stop sending the target file to the receiving terminal; and replace the sending progress mark with a stop mark for stopping sending the target file.
[0237] Here, the target file is a text file as an example for explanation, wherein the file transfer page is a candidate instant messaging session page, specifically, the file transfer page is an instant messaging session page between a sending object in a sending terminal and a receiving object in a receiving terminal.
[0238] like Figure 6a As shown, when the sending terminal sends a text file, the file transfer page may include a transfer status control 151 , a file name such as “first quarter financial report data.key” displayed on the transfer status control 151 , and a sending progress indicator 152 displayed on the transfer status control 151 .
[0239] When the object can click the transmission status control, the sending terminal can respond to the stop operation on the transmission status control and stop sending the text file to the receiving terminal. Figure 6b As shown, the sending progress mark on the file transfer page is replaced by a stop mark 161 for stopping sending the text file.
[0240] After the present application stops sending the target file to the receiving terminal, the target file may become invalid. In this case, the target file can be resent. Specifically, when the stop time of stopping sending the target file to the receiving terminal exceeds a preset time threshold, in response to a trigger operation on a transmission status control control, a resending page is displayed, and the resending page includes a resending control; in response to a trigger operation on the resending control, the target file is resent to the receiving terminal.
[0241] It can be understood here that when the stop time of sending the target file to the receiving terminal exceeds the preset time threshold, the target file may be invalid. In this case, if the sending terminal needs to send the target file, the sending terminal needs to resend the target file. The sending terminal can send the target file to the target server so that the target server can send the target file to the receiving terminal.
[0242] The resending page may be displayed in a pop-up window. When the resending page is a pop-up window, the resending page may be displayed on an upper layer of the file transfer page.
[0243] Here, the target file is a text file as an example. For example, when the stop time of stopping sending the target file to the receiving terminal exceeds the preset time threshold, in response to the trigger operation of the transmission status control control, a resending page is displayed, such as Figure 6c As shown, the resending page includes a resending control 171, a target canceling control 172, and resending instruction information such as "the pause time is too long, and the file needs to be resent."
[0244] When the candidate object clicks the resend control 171, the sending terminal resends the target file to the receiving terminal in response to the click operation on the resend control 171. Figure 6g As shown, the receiving terminal hides the resending page and displays the file transfer page, the stop mark 161 on the file transfer page is replaced with the termination mark 181, and the candidate transmission status control 211 is displayed. The termination mark 181 can indicate that the target file is terminated, and the candidate transmission status control 211 displays the file name such as "first quarter financial report data.key" and the candidate sending progress mark 212. Among them, the candidate sending progress mark 212 indicates the progress of the sending terminal sending the target file. Among them, the display form of the candidate sending progress mark 212 can be the same as the display form of the sending progress mark.
[0245] When the candidate performs a click operation on the target cancel control 172, the sending terminal hides the resending page and displays the file transfer page in response to the click operation on the target cancel control 172, such as Figure 6d As shown, the stop mark 161 on the file transfer page is replaced by a termination mark 181.
[0246] After replacing the sending progress indicator with the stop indicator for stopping sending the target file, the present application may further replace the stop indicator with the sending progress indicator. Specifically, when the sending terminal stops sending the target file, in response to a trigger operation on the transmission status control control, the target file continues to be sent to the receiving terminal; and the stop indicator is replaced with the sending progress indicator.
[0247] For example, when the sending terminal stops sending the target file, the transmission status control on the file transfer page displays a stop sign. When the object can click the transmission status control, the sending terminal can respond to the stop operation on the transmission status control and continue to send the target file to the receiving terminal; at this time, the stop sign on the transmission status control is replaced by a sending progress sign.
[0248] After "displaying the file transfer page of the target file", when the sending terminal is disconnected from the network, the sending progress indicator is replaced with a candidate stop indicator in the file transfer page, and the interruption indication information is displayed. The candidate stop indicator indicates that the sending terminal stops sending the target file; the interruption indication information indicates that the sending terminal is interrupted in sending the target file.
[0249] When the sending terminal is disconnected from the network, such as Figure 6e As shown, the file transfer page includes a candidate stop mark 191 and interruption indication information such as "sending interrupted". When the interruption time of the sending terminal interrupting the sending of the target file exceeds the target preset time threshold, in response to the triggering operation of the transmission status control control 151, the following is displayed: Figure 6h The candidate resend page includes a candidate resend control 221, a candidate cancel control 222, and interruption indication information such as "interruption time is too long, need to resend the file". At this time, the sending terminal hides the candidate resend page and displays the following Figure 6g The File Transfer page is shown.
[0250] When the candidate performs a click operation on the candidate resending control 221 in the candidate resending page, the sending terminal resends the target file to the receiving terminal in response to the click operation on the candidate resending control 221 .
[0251] When the candidate object clicks the candidate cancel control 222, the sending terminal hides the new page in response to the click operation on the candidate cancel control 222 and displays Figure 6d The File Transfer page is shown.
[0252] After "displaying the file transfer page of the target file", when the target file stops being sent, the application status information of the instant messaging application used by the sending terminal to send the target file is detected, and it is determined whether the application status information indicates that the instant messaging application is closed; when the application status information indicates that the instant messaging application is closed, the instant messaging application is started, and the following is displayed: Figure 6e The file transfer page shown includes a candidate stop mark 191 and interruption indication information such as "send interruption".
[0253] When the interruption time of the sending terminal interrupting the sending of the target file does not exceed the target preset time threshold, in response to the triggering operation on the transmission state control component 151, the sending of the target file continues.
[0254] When the sending terminal interrupts the sending of the target file for a period of time exceeding the target preset time threshold, the sending terminal can handle the situation in the above manner. Figure 6c and Figure 6d The explanation will not be repeated here.
[0255] After step S303, when the sending terminal completes sending the target file, the file transfer page is displayed; the sending progress mark in the file transfer page is replaced with a completion mark. Figure 6f As shown, the file transfer page includes a completion mark 201 and a file name of the target file such as “first quarter financial report data.key”.
[0256] Regarding steps S301 to S303, the target file is a text file as an example for further explanation. Figure 8 As shown, specifically as shown in step S101 to step S118:
[0257] S101: Display a file sending page including a file sending control.
[0258] S102: In response to a trigger operation on a sending control, a target file is sent to a receiving terminal, so that the receiving terminal receives the target file when the sending terminal sends the target file.
[0259] S103: Display a file transfer page including a sending progress indicator of the target file.
[0260] S104: Determine whether the sending terminal actively stops sending the target file.
[0261] For step S104, when the sending terminal sends the target file, when the sending terminal responds to the trigger operation of the transmission status control control and stops sending the target file to the receiving terminal, in this case, it can be determined that the sending terminal actively suspends sending the target file, and step S105 is executed; when the sending terminal does not respond to the trigger operation of the transmission status control control and does not stop sending the target file to the receiving terminal, in this case, it can be determined that the sending terminal does not actively suspend sending the target file, and step S109 is executed.
[0262] S105. In the file transfer page, the sending progress indicator is replaced with a stop indicator for stopping sending the target file.
[0263] S106: Determine whether the stop time of sending the target file to the receiving terminal exceeds a preset time threshold.
[0264] When the stop time exceeds a preset time threshold, such as 5 days, step S107 is executed; when the stop time does not exceed the preset time threshold, step S109 is executed.
[0265] S107: In response to a trigger operation on the transmission status control control, display a resending page including a resending control.
[0266] S108: Responding to the triggering operation on the resending control, resending the target file to the receiving terminal.
[0267] S109: Determine whether the sending terminal is disconnected from the network.
[0268] When the sending terminal is disconnected from the network, step S110 is executed; when the sending terminal is not disconnected from the network, step S114 is executed.
[0269] S110: In the file transfer page, the sending progress indicator is replaced with a candidate stop indicator, and interruption indication information is displayed.
[0270] S111 , determining whether the interruption time of the sending terminal interrupting the sending of the target file exceeds a target preset time threshold.
[0271] When the interruption time of the sending terminal interrupting the sending of the target file exceeds the target preset time threshold, step S112 is executed; when the interruption time of the sending terminal interrupting the sending of the target file does not exceed the target preset time threshold, step S114 is executed.
[0272] S112: In response to the trigger operation on the transmission status control component, a candidate resending page is displayed.
[0273] S113: Responding to a trigger operation on a candidate resending control, resending the target file to a receiving terminal.
[0274] S114: Detect application status information of the sending terminal.
[0275] S115: Determine whether the application status information indicates that the instant messaging application is closed.
[0276] When the application status information indicates that the instant messaging application is closed, step S116 is executed; when the application status information does not indicate that the instant messaging application is closed, the target file continues to be sent.
[0277] S116: When the instant messaging application is started, a file transfer page is displayed.
[0278] S117: Determine whether the interruption time of the sending terminal interrupting the sending of the target file exceeds the target preset time threshold.
[0279] When the interruption time of the sending terminal interrupting the sending of the target file exceeds the target preset time threshold, return to step S107; when the interruption time of the receiving terminal interrupting the sending of the target file does not exceed the target preset time threshold, execute step S118.
[0280] S118. In response to the trigger operation on the transmission status control component, continue to send the target file.
[0281] The embodiment of the present application can display a file sending page, which includes a target file and a sending control for the target file; in response to a trigger operation on the sending control, the target file is sent to the receiving terminal so that the receiving terminal receives the target file when the sending terminal sends the target file; and a file transfer page for the target file is displayed, which includes a sending progress indicator for the target file. Since the sending terminal of the embodiment of the present application can send the target file to the receiving terminal in response to a trigger operation on the sending control so that the receiving terminal receives the target file when the sending terminal sends the target file, the file transfer efficiency between the sending terminal and the receiving terminal is improved. Then, the embodiment of the present application can also display the sending progress indicator of the target file in the file transfer page so that the user can perceive the sending progress of the target file, thereby improving the user's experience of transferring files.
[0282] According to the method described in the above embodiment, the following is further described in detail with examples.
[0283] In this embodiment, the file transmission device is specifically integrated into an electronic device, and the electronic device serves as a target server.
[0284] like Figure 7 As shown, a file transmission method, the specific process is shown in steps S401 to S404:
[0285] S401: Receive at least one current file block of a target file and associated file upload information of the current file block sent by a sending terminal.
[0286] The target file may include multiple candidate file blocks, and the current file block may refer to a file block that the sending terminal is uploading among the multiple candidate file blocks. The sending terminal may upload multiple current file blocks in parallel at one time.
[0287] Among them, the specific information of associated file upload can be found in the description of the previous application embodiment.
[0288] Before step S401, the target server may receive a file upload request for a target file sent by a sending terminal; then, based on the file upload request, the target file identifier is returned to the sending terminal, so that the sending terminal can send a file message including the file identifier to the receiving terminal. It can be understood here that when the receiving terminal receives the file message, a file display control corresponding to the file message will be displayed in the displayed file message display page.
[0289] It should be noted here that when the sending terminal sends a file message including a file identifier to the receiving terminal, the sending terminal sends the file message to the message server, and then the receiving terminal can pull the file message from the message server. The message server may refer to a server at least used to receive and send file messages.
[0290] It can be understood here that after the sending terminal obtains the file identifier from the target server, the sending terminal may send the current file block of the target file to the target server and the sending terminal may send the file message to the message server in parallel.
[0291] S402: Based on the current file block and the associated file upload information, the preset file set is updated to obtain an updated file set.
[0292] It should be noted here that step S401 and step S402 are a continuously cyclic process. For example, after step S402, the updated file set can be used as the preset file set, and the execution returns to at least one current file block of the target file sent by the receiving sending terminal and the associated file upload information of the current file block until the sending terminal stops sending the current file block and the associated file upload information to the target server, thereby obtaining the updated file set.
[0293] In the embodiment of the present application, the target server may include a cache server and a storage server. The explanation of the cache server and the storage server can be specifically referred to in the description of the embodiment of the previous application, and will not be repeated here.
[0294] (1) For cache servers;
[0295] In the present application, a cache server may be used to receive at least one current file block of a target file sent by a sending terminal and associated file upload information of the current file block.
[0296] Then, for step S402, the target server may adopt a cache server to update the preset file set based on the current file block and the associated file upload information to obtain an updated file set.
[0297] The preset file set includes a preset file block subset and a preset transmission information subset. The preset file block subset may refer to a file block set used by the cache server to store the current file block sent by the sending terminal; the preset transmission information subset may refer to a set used by the cache server to store the associated file upload information sent by the sending terminal.
[0298] The specific method of the step "using a cache server to update the preset file set based on the current file block and the associated file upload information to obtain an updated file set" can be: using the cache server to update the preset file block subset based on the current file block to obtain an updated file block subset; using the cache server to update the preset transmission information subset according to the associated file upload information to obtain an updated transmission information subset; generating an updated file set based on the updated file block subset and the updated transmission information subset.
[0299] Among them, the present application can store the current file block in a preset file block subset to obtain an updated file block subset. It should be noted here that after the current file block is stored, it can be called a file block. Based on this, when the receiving terminal downloads the target file, the file block can be downloaded from the preset file block subset of the target server.
[0300] Among them, the associated file upload information can be stored in a preset transmission information subset to obtain an updated transmission information subset; specifically, the associated file upload information can be stored in a preset transmission information subset, and the associated file upload information replaces the historical associated file upload information in the preset transmission information subset to obtain an updated transmission information subset.
[0301] The historical associated file upload information may refer to the associated file upload information within a historical period.
[0302] After the cache server is used to receive at least one current file block of the target file sent by the sending terminal and the associated file upload information of the current file block, the present application can use the cache server to send the current file block and the associated file upload information to the storage server.
[0303] (ii) For storage servers;
[0304] When the storage server receives the current file block and associated file upload information sent by the cache server, the target server can use the cache server to send the current file block and associated file upload information to the storage server; the target server can use the storage server to receive the current file block and associated file upload information, and based on the current file block and associated file upload information, update the preset file data set to obtain an updated file data set.
[0305] The updated file data set includes a preset binding data subset and a preset upload information subset. The preset binding data subset may be a set for storing the current file block and the reference upload information of the current file block; the preset upload information subset may be a set for storing the associated file upload information.
[0306] The associated file upload information of the candidate file blocks included in the associated file upload information includes two types of information, for example, (1) associated file upload information of the candidate file blocks that are strongly associated with the current file block; (2) associated file upload information of the candidate file blocks that are weakly associated with the current file block; and (3) associated file upload information of the current file block.
[0307] The reference upload information may include (1) associated upload information of candidate file blocks that are strongly associated with the current file block; (2) associated upload information of the current file block. The associated upload information may be specifically explained in the previous application embodiment and will not be described here.
[0308] It can be understood here that when the sending terminal splits the target file, it can split the target file into multiple independent candidate file blocks according to the size of 1MB, and then the sending terminal can divide 128 candidate file blocks into one block. When the candidate file block and the current file block are in the same block, this situation can be called a strong correlation between the candidate file block and the current file block; when the candidate file block and the current file block are not in the same block, for example, the candidate file block and the current file block are respectively in two adjacent blocks, this situation can be called a weak correlation between the candidate file block and the current file block.
[0309] In the present application, each block can use 16 bytes to represent the reference upload information corresponding to the block. The associated file upload information may include the reference upload information of the block where the current file block is located and the reference upload information of the adjacent blocks of the current file block, or only include the reference upload information of the block where the current file block is located.
[0310] When uploading the current file block, the sending terminal can send the current file block and the associated file upload information of the current file block to the target server. However, if the associated file upload information occupies too many bytes, it will easily lead to data instability. Based on this, the application can set the associated file upload information to include reference upload information corresponding to at most 3 blocks.
[0311] For example, when the sending terminal is uploading the 100th current file block, the associated file upload information carried by the 100th current file block includes 16 bytes of reference upload information corresponding to the first block; when the sending terminal is uploading the 200th current file block, the associated file upload information carried by the 200th current file block includes (1) 16 bytes of reference upload information corresponding to the first block; and (2) 16 bytes of reference upload information corresponding to the second block.
[0312] When the sending terminal uploads the 300th current file block, the associated file upload information carried by the 300th current file block includes (1) 16 bytes of reference upload information corresponding to the first block; (2) 16 bytes of reference upload information corresponding to the second block; and (3) 16 bytes of reference upload information corresponding to the third block.
[0313] Similarly, when the sending terminal uploads the 800th current file block, the associated file upload information carried by the 800th current file block includes (1) 16 bytes of reference upload information corresponding to the fifth block; (2) 16 bytes of reference upload information corresponding to the sixth block; and (3) 16 bytes of reference upload information corresponding to the seventh block.
[0314] In an embodiment of the present application, after receiving the current file block and the associated file upload information, the storage server can update the preset file data set. Specifically, the step of "updating the preset file data set based on the current file block and the associated file upload information to obtain an updated file data set" can be as follows: the storage server extracts the reference upload information corresponding to the current file block from the associated file upload information, and binds the current file block and the reference upload information to obtain file block binding data; the storage server updates the preset binding data subset based on the file block binding data to obtain an updated binding data subset; the storage server updates the preset upload information subset based on the associated file upload information to obtain an updated upload information subset; based on the updated upload information subset and the updated binding data subset, the updated file data set is determined.
[0315] Among them, a storage server can be used to store file block binding data in a preset binding data subset, and replace the historical file block binding data in the preset data subset to update the preset binding data subset; a storage server can be used to store associated file upload information in a preset upload information subset, and replace the historical associated file upload information in the preset upload information subset to update the preset upload information subset.
[0316] The historical file block binding data may refer to the file block binding data within a historical time.
[0317] The step of "using the storage server to update the preset upload information subset based on the associated file upload information to obtain the updated upload information subset" is described by an example. For example, before the preset upload information subset is updated, the target server may pre-establish a block index in the preset upload information subset, and each block index includes index information corresponding to the current block, and the index information may include preset reference upload information corresponding to the current block where the current file block is located and preset reference upload information of the next block of the current block.
[0318] For example, the first block index includes the preset reference upload information of the first block and the preset reference upload information of the second block; the second block index includes the preset reference upload information of the second block and the preset reference upload information of the third block; the third block index includes the preset reference upload information of the third block and the preset reference upload information of the fourth block, and so on.
[0319] The preset reference upload information may include preset status information corresponding to the candidate file block and candidate sequence information corresponding to the candidate file block. The preset status information may be set to 0, indicating that the candidate file block has not been uploaded. It should be noted that, in the first update, the preset status information is 0; in other rounds of updates after the first update, the preset status information may not be 0.
[0320] Then, the process of updating the upload information subset can be, for example: for example, when uploading the 100th current file block, the first block index needs to be updated, and the first block index includes the preset status information of the first block and the preset status information of the second block; the present application can update the first block index based on the associated file upload information of the 100th current file block to obtain an updated first block index, wherein, in the index information of the updated first block index, the preset status information of the first block has been updated to obtain the updated status information, and under normal circumstances, the updated status information is 1; the preset status information of the second block is 0.
[0321] When uploading the 200th current file block, in this case, the updated first block index is used as the first block index, the updated status information is used as the preset status information, and the first block index and the second block index are updated. When uploading the 200th current file block, in this case, the preset status information of the second block is updated. This ensures that before the receiving terminal downloads the file block of the second block, the file block of the first block can be downloaded, and the reference download information of the third block can be downloaded, so as to continue downloading the file block of the target file.
[0322] When uploading the 300th current file block, in this case, the updated first block index is used as the first block index, the updated second block index is used as the second block index, the update status information is used as the preset status information, and then the first block index, the second block index and the third block index are updated. And so on.
[0323] S403: When the target file download information sent by the receiving terminal is received, the file block corresponding to the target file download information and the associated file download information corresponding to the file block are screened out from the preset file set.
[0324] In step S403, the method of the step of "filtering out the file blocks corresponding to the target file download information and the associated file download information corresponding to the file blocks in the preset file set" can be: extracting the sequence information of the file blocks to be downloaded in the target file download information; extracting the file blocks corresponding to the sequence information in the preset file block subset of the preset file set; extracting the associated file download information corresponding to the sequence information in the preset transmission information subset of the preset file set.
[0325] The associated file download information may include reference download information of the block where the file block is located, reference download information of adjacent blocks of the block where the file block is located, or reference download information of the block where the file block is located.
[0326] It can be understood here that the reference download information may be the reference upload information corresponding to when the sending terminal uploads the current file block.
[0327] S404: Return the file block and the associated file download information to the receiving terminal, so that the receiving terminal can obtain the target file when the sending terminal sends the target file.
[0328] It should be noted here that step S403 and step S404 are a continuously cyclic process. After step S404, the present application can generate target file download information based on the associated file download information, and return to the execution step. When the target file download information sent by the receiving terminal is received, the file block corresponding to the target file download information and the associated file download information corresponding to the file block are screened out in the preset file set until each associated file download information is the target file download information, so that the receiving terminal receives the file block corresponding to each target file download information returned by the target service.
[0329] The associated file download information can be used as the initial file download information, and then the target file download information can be generated based on the initial file download information. The present application can identify the sequence information of the file blocks whose current transmission status is the uploaded status in the initial file download information, and use the sequence information of the file blocks in the uploaded status as the target file download information; or use the initial file download information as the target file download information.
[0330] It should be noted here that, in the embodiment of the present application, the loop process of step S401 and step S402 and the loop process of step S403 and step S404 can be parallel processes.
[0331] Regarding step S401 and step S404, an example in which a receiving terminal downloads a target file from a storage server is taken for explanation.
[0332] like Fig. 9As shown, the sending terminal can divide the target file into multiple candidate file blocks, and divide the candidate file blocks into n blocks, such as block 1, block 2, ..., and block n. Among them, the present application can treat 128 candidate file blocks as a block, each candidate file block has corresponding associated upload information, and the associated upload information of each candidate file block can be represented by 1 bit state. Based on this, each block can have corresponding 128 bit states, such as 1 or 0. Since block n is the last block, block n includes 88 candidate file blocks, based on this, block n can correspond to 88 bit states. In this example, the associated upload information is represented by the bit state. It should be noted here that when the candidate file block has been uploaded, the corresponding bit state is 1, and when the candidate file block has not been uploaded, the corresponding bit state is 1.
[0333] like Fig. 9 As shown, for example, the sending terminal is currently sending the current file block x in the upload block 3 to the cache server of the target server, where x1 represents the bit state of the current file block. When the sending terminal sends the current file block x, it carries the associated file upload information corresponding to the current file block, for example, the associated file upload information includes the bit state of block 1, the bit state of block 2, and the bit state of block 3. Then, the cache server sends the current file block x, the bit state of block 1, the bit state of block 2, and the bit state of block 3 to the storage server.
[0334] After receiving the current file block x, the bit status of block 1, the bit status of block 2, and the bit status of block 3, the storage server can bind the current file block x of block 3 and the bit status of block 3 to obtain file block binding data, and update the preset binding data subset in the storage server to obtain an updated binding data subset. The preset upload information subset of the storage server is updated with the bit status of block 1, the bit status of block 2, and the bit status of block 3 to obtain an updated upload information subset.
[0335] When the sending terminal stores the target file in the target server, the receiving terminal can request the target server to download the target file. When the receiving terminal cannot find the target file from the cache server of the target server, the receiving terminal can request the target file from the storage server.
[0336] For example, when the receiving terminal requests the first file block from the storage server, it may send a file download request carrying a file identifier to the storage server, so that the storage server returns initial file download information and the first file block based on the file identifier.
[0337] After requesting the first file block from the storage server, the receiving terminal may continue to request file blocks. For example, the receiving terminal may download file block y in the second block from the storage server.
[0338] The receiving terminal can send the target file download information of the file block y to the storage server. After receiving the target file download information, the storage server can obtain the reference download information of the file block y and the file block y from the updated binding data subset based on the target file download information, such as the bit status of block 2, and the file block download information obtained from the preset upload information subset, such as the bit status of block 2 and the bit status of block 3. Then, the storage server can send the current file block x, the reference download information and the file block download information together to the receiving terminal.
[0339] After receiving the current file block x, the reference download information and the file block download information, the receiving terminal can merge the reference download information and the file block download information to obtain the merged download information; then, based on the merged download information, the target file download information can be generated; then, the target file download information can be sent to the storage server to request the file block and the associated file download information.
[0340] The fused download information may be used as the target file download information, or the sequence information of the file blocks whose current transmission status is the uploaded status may be identified in the fused download information, and the sequence information of the file blocks whose current transmission status is the uploaded status may be used as the target file download information.
[0341] The receiving terminal can also use the fused download information to update the local bit state of the receiving terminal to obtain the updated bit state. Fig. 9 As shown in , the local bit state can be set by the receiving terminal corresponding to the bit state of each block of the sending terminal.
[0342] The embodiment of the present application can use the target server as a transfer station for the target file, so that the receiving terminal can download the target file during the process of uploading the target file by the sending terminal, thereby improving the file transmission efficiency.
[0343] According to the method described in the above embodiment, a further detailed description is given here by taking the target server including a cache server as an example.
[0344] like Fig.10 As shown, a file transmission method, the specific process is shown in steps S801 to S817:
[0345] S801: A sending terminal displays a file sending page including a target file and a sending control for the target file.
[0346] Specifically, the sending terminal can display a file transfer page including a file selection control; in response to a trigger operation on the file selection control; obtain multiple candidate files; in response to a selection operation on the candidate files, display a file sending page including a target file and a sending control for the target file.
[0347] S802: The sending terminal sends a file upload request to the cache server in response to a trigger operation on the sending control.
[0348] Regarding step S802, it can be understood here that the sending terminal sends a file upload request to the cache server in response to the trigger operation on the sending control, so as to send the target file to the cache server, so that the target file can be sent to the receiving terminal through the cache server, so that the receiving terminal receives the target file when the sending terminal sends the target file.
[0349] After step S802, the sending terminal may further display a file transfer page of the target file, where the file transfer page includes a sending progress indicator of the target file.
[0350] Among them, after the step of "displaying the file transfer page of the target file", the present application can also stop sending the target file to the receiving terminal. Specifically, when the sending terminal sends the target file, in response to the trigger operation of the transmission status control control, stop sending the target file to the receiving terminal; and replace the sending progress mark with a stop mark for stopping sending the target file.
[0351] Among them, after the present application stops sending the target file to the receiving terminal, the target file may become invalid. In this case, the target file can be resent. Specifically, when the stop time of stopping sending the target file to the receiving terminal exceeds a preset time threshold, in response to a trigger operation on a transmission status control control, a resending page is displayed, and the resending page includes a resending control; in response to a trigger operation on the resending control, the target file is resent to the receiving terminal.
[0352] S803: The cache server receives the file upload request, and returns a file identifier to the sending terminal based on the file upload request.
[0353] S804: The sending terminal receives the file identifier and generates a file message based on the file identifier.
[0354] S805: The sending terminal sends a file message including a file identifier to the message server.
[0355] S806: The message server receives and stores the file message.
[0356] S807: The sending terminal splits the target file to obtain at least one candidate file block.
[0357] Specifically, the step of "splitting the target file to obtain at least one candidate file block" may be: obtaining preset splitting parameters; and splitting the target file based on the preset splitting parameters to obtain at least one candidate file block.
[0358] S808: The sending terminal selects at least one current file block from the candidate file blocks, and obtains the associated file upload information corresponding to the current file block.
[0359] Among them, the method of the step "obtaining the associated file upload information corresponding to the current file block" can be: obtaining the preset file transfer information corresponding to the current file block, and detecting the upload status information of the uploaded target file block in the candidate file block; based on the upload status information, updating the preset file transfer information to obtain the associated file upload information corresponding to the current file block.
[0360] S809: The sending terminal sends the current file block and associated file upload information to the cache server.
[0361] S810: The cache server receives the current file block and the associated file upload information, and updates the preset file set based on the current file block and the associated file upload information to obtain an updated file set.
[0362] In step S810, the preset file set includes a preset file block subset and a preset transmission information subset; the cache server updates the preset file set based on the current file block and the associated file upload information, and the method for obtaining the updated file set can be: using the cache server to update the preset file block subset based on the current file block to obtain an updated file block subset; using the cache server to update the preset transmission information subset according to the associated file upload information to obtain an updated transmission information subset; generating an updated file set based on the updated file block subset and the updated transmission information subset.
[0363] S811. The receiving terminal pulls a file message including a file identifier from a message server.
[0364] S812: The receiving terminal displays a file message display page including a file display control corresponding to the file message.
[0365] S813: The receiving terminal displays a file receiving page including a receiving control for the target file in response to the triggering operation on the file display control.
[0366] S814: The receiving terminal displays a file download page of the target file in response to the triggering operation on the receiving control.
[0367] The file download page includes file sending status information, and the file sending status information indicates that the sending terminal is sending the target file.
[0368] In an embodiment of the present application, after displaying the file download page of the target file, the sending terminal may stop sending the target file. Accordingly, the receiving terminal will respond to this situation. Specifically, when the sending terminal stops sending the target file, a file termination reception page is displayed, and the file termination reception page includes a page return control and stop transmission indication information of the target file; in response to a trigger operation on the page return control, a file message display page is displayed, and a first file status indication mark is displayed on the file message display page, and the first file status indication mark indicates that the transmission of the target file has been terminated.
[0369] In an embodiment of the present application, after displaying the file download page of the target file, the download of the target file can be canceled, and then the download of the target file can be continued. For example, the file download page includes a cancel control. On this basis, the receiving terminal can display the file receiving page in response to a trigger operation on the cancel control; and continue to download the target file in response to a trigger operation on the receiving control on the file receiving page.
[0370] S815: The receiving terminal sends target file download information to the cache server.
[0371] Specifically, the receiving terminal may send the target file download information to the cache server by: obtaining initial file download information of the target file and using the initial file download information as the target file download information; and sending the target file download information to the cache server.
[0372] Among them, the step of "obtaining initial file download information of the target file" can be: obtaining the file identifier of the target file; sending a file download request carrying the file identifier to the target server, so that the target server returns the initial file download information based on the file identifier; receiving the initial file download information of the target file.
[0373] Specifically, the step of "obtaining the file identifier of the target file" may be performed by: obtaining a file message of the target file sent by the sending terminal; and extracting the file identifier of the target file from the file message.
[0374] Specifically, the step of "sending a file download request carrying a file identifier to a target server so that the target server returns initial file download information based on the file identifier" can be: sending a file download request carrying a file identifier to a cache server so that the cache server queries the initial file download information corresponding to the file identifier; when the initial file download information returned by the cache server is not received, sending a file download request carrying a file identifier to a storage server so that the storage server returns the initial file download information based on the file identifier; and receiving the initial file download information returned by the storage server.
[0375] S816: The cache server selects the file block corresponding to the target file download information and the associated file download information corresponding to the file block from the preset file set.
[0376] S817: The cache server returns the file block and the associated file download information to the receiving terminal, so that the receiving terminal can obtain the target file when the sending terminal sends the target file.
[0377] Among them, step S805 and step S807 can be performed in parallel. Step S811 can be performed before or after any step after step S805 and before step S811. Step S814 and step S815 can be performed in parallel.
[0378] Steps S801 to S817 are further explained here.
[0379] like Fig.11 As shown, the sending terminal displays a file sending page including a target file and a sending control of the target file; the sending terminal sends a file upload request to the cache server in response to a trigger operation on the sending control. Then, the cache server receives the file upload request and returns a file identifier to the sending terminal based on the file upload request. The sending terminal receives the file identifier and generates a file message based on the file identifier. Then, the sending terminal sends a file message including the file identifier to the message server. After receiving the file message, the message server can return a success message to the sending terminal.
[0380] The sending terminal may send the target file to the cache server. Specifically, the sending terminal may split the target file to obtain at least one candidate file block. Then, the sending terminal selects at least one current file block from the candidate file blocks and obtains the associated file upload information corresponding to the current file block. For example, the sending terminal selects at least one current file block from the candidate file blocks, where the current file block may be referred to as a fragment. For example, the current file block may include: Fig.11The sending terminal may also obtain the bit status of the uploaded fragments, and use the bit status of the uploaded fragments as the associated file upload information corresponding to the current file block. The bit status may be recorded as bit in this application.
[0381] The sending terminal can send the bits of fragment 1 and the fragments uploaded before fragment 1, and the bits of fragment 2 and the fragments uploaded before fragment 2 to the cache server in parallel. When the cache server receives the bits of fragment 1 and the fragments uploaded before fragment 1, and the bits of fragment 2 and the fragments uploaded before fragment 2, and updates the preset file set, it can then return success information to the sending terminal respectively.
[0382] By analogy, the sending terminal can continuously send the fragments and the bits of the fragments uploaded before the fragments to the cache server in a loop so that the cache server updates the preset file set until all the fragments of the target file are sent to the cache server. When the sending terminal completes sending all the fragments of the target file to the cache server, it sends a message of upload completion to the cache server. When the cache server receives the message of upload completion, it returns a success message to the sending terminal.
[0383] Of course, when the network is interrupted, or the sending terminal stops sending the target file, the sending terminal can stop sending the target file.
[0384] When the sending terminal sends the fragment to the cache server, the receiving terminal can send a message acquisition request to the message server to request the file information of the target file. When the message server receives the message acquisition request, the message server returns the file information to the receiving terminal.
[0385] Then, the receiving terminal can generate a file download request based on the file identifier in the file message, and then request the cache server to download the first fragment of the target file based on the file download request. The cache server can return the first fragment and the initial file download information corresponding to the first fragment based on the file identifier. The initial file download information can include the bit of the fragment uploaded by the sending terminal. After receiving the initial download information, the receiving terminal can update the local bit status based on the initial download information.
[0386] Then, the receiving terminal can use the initial file download information as the target file download information and continue to request segments from the cache server, such as segment 1 and segment 2. Each time the cache server returns a segment to the receiving terminal, it will carry the associated file download information corresponding to the segment. Then, the associated file download information can be used as the initial file download information, and the initial file download information can be used as the target file download information to continue to request segments from the cache server, and so on, until all segments of the target file are downloaded.
[0387] Of course, when the network is interrupted, or the receiving terminal stops receiving the target file, or the sending terminal stops sending the target file, the receiving terminal can stop downloading the target file.
[0388] This application can improve the efficiency of file transmission between the receiving terminal and the sending terminal, such as Fig.12 As shown, the present application can realize the uploading and downloading of the target file in parallel; while in the existing related technologies, the uploading and downloading of the target file and the transmission of the file message are serial. It can be seen that in the existing related technologies, the transmission of the target file takes a longer time.
[0389] This application supports downloading the target file during uploading, which can effectively shorten the waiting time from when the user receives the target file to when he clicks to complete the download, while also ensuring the consistency of the message timing between the sending terminal and the receiving terminal.
[0390] The present application can display a file receiving page, the file receiving page includes a receiving control for a target file, the target file includes a file sent by a sending terminal to a receiving terminal; in response to a trigger operation on the receiving control, a file download page for the target file is displayed, the file download page includes file sending status information, the file sending status information indicates that the sending terminal is sending the target file; when the sending terminal completes the sending of the target file, the download progress information of the target file is displayed on the file download page, the download progress information indicates that part of the content of the target file has been downloaded. Since the present application can respond to the trigger operation of the receiving control for the target file in the file receiving page, so that the receiving terminal receives the target file in real time during the process of the sending terminal sending the target file, so as to improve the file transmission efficiency between the sending terminal and the receiving terminal, so that the receiving terminal can display the file sending status information on the file download page of the target file, so as to improve the user's experience of file transmission; in this way, when the sending terminal completes the sending of the target file, the receiving terminal can complete the download of part of the content of the target file, so as to improve the file transmission efficiency between the sending terminal and the receiving terminal, so that the receiving terminal can display the download progress information indicating that part of the content of the target file has been downloaded, so as to improve the user's experience and enthusiasm of file transmission.
[0391] In order to better implement the above method, an embodiment of the present application also provides a file transmission device, which can be integrated into an electronic device, such as a receiving terminal, which can include a tablet computer, a laptop computer and / or a personal computer, etc.
[0392] For example, Fig.13As shown, the file transmission device may include a first display unit 301, a second display unit 302 and a third display unit 303, as follows:
[0393] (1) a first display unit 301;
[0394] The first display unit 301 may be used to display a file receiving page, where the file receiving page includes a receiving control for a target file, where the target file includes a file sent by a sending terminal to a receiving terminal.
[0395] For example, the first display unit 301 can also be used to display a file message display page corresponding to the target file when the sending terminal starts to send the target file, and the file message display page includes a file display control; in response to a trigger operation on the file display control, a file receiving page is displayed.
[0396] (2) a second display unit 302;
[0397] The second display unit 302 can be used to display a file download page of a target file in response to a trigger operation on a receiving control, where the file download page includes file sending status information, where the file sending status information indicates that the sending terminal is sending the target file.
[0398] For example, the second display unit 302 can also be used to display a file termination reception page when the sending terminal stops sending the target file, and the file termination reception page includes a page return control and stop transmission indication information of the target file; in response to a trigger operation on the page return control, a file message display page is displayed, and a first file status indication mark is displayed on the file message display page, and the first file status indication mark indicates that the transmission of the target file has been terminated.
[0399] For example, the file download page includes a cancel control; the second display unit 302 can also be used to display the file receiving page in response to a trigger operation on the cancel control; and continue downloading the target file in response to a trigger operation on the receiving control on the file receiving page.
[0400] (3) a third display unit 303;
[0401] The third display unit 303 may be used to display download progress information of the target file on the file download page when the sending terminal completes sending the target file, where the download progress information indicates that part of the content of the target file has been downloaded.
[0402] For example, the third display unit 303 can be used to display a file suspension reception page when the receiving terminal pauses receiving the target file, the file suspension reception page including a continue receiving control; in response to a trigger operation on the continue receiving control, the target file continues to be downloaded.
[0403] like Fig.14 As shown, the file transmission device may further include a downloading unit 304 .
[0404] The download unit 304 can be used to obtain initial file download information of the target file in response to a trigger operation on the receiving control; request the target server for the file block of the target file and the associated file download information corresponding to the file block according to the initial file download information, so that the target server returns the file block and the associated file download information; receive the associated file download information and the file block, and use the associated file download information as the initial file download information; return to execute the step of requesting the target server for the file block and the associated file download information corresponding to the file block according to the initial file download information, until each associated file download information is the initial file download information, to obtain multiple file blocks corresponding to the target file, and combine the multiple file blocks to obtain the target file.
[0405] For example, the download unit 304 can be specifically used to obtain the file identifier of the target file; send a file download request carrying the file identifier to the target server so that the target server returns initial file download information based on the file identifier; and receive the initial file download information of the target file.
[0406] As can be seen from the above, the first display unit 301 of the embodiment of the present application can be used to display a file receiving page, which includes a receiving control for the target file, and the target file includes a file sent by the sending terminal to the receiving terminal; the second display unit 302 can be used to display a file download page for the target file in response to a trigger operation on the receiving control, and the file download page includes file sending status information, and the file sending status information indicates that the sending terminal is sending the target file; the third display unit 303 can be used to display the download progress information of the target file on the file download page when the sending terminal completes the sending of the target file, and the download progress information indicates that part of the content of the target file has been downloaded. Since the present application can respond to the triggering operation of the receiving control for the target file in the file receiving page, so that the receiving terminal receives the target file, so that during the process of the sending terminal sending the target file, the receiving terminal receives the target file in real time, so as to improve the file transmission efficiency between the sending terminal and the receiving terminal, so that the receiving terminal can display the file sending status information on the file download page of the target file, so as to improve the user's experience of file transmission; in this way, when the sending terminal completes the sending of the target file, the receiving terminal can complete the downloading of part of the content of the target file, so as to improve the file transmission efficiency between the sending terminal and the receiving terminal, so that the receiving terminal can display the download progress information indicating that part of the content of the target file has been downloaded, so as to improve the user's experience and enthusiasm of file transmission.
[0407] In order to better implement the above method, an embodiment of the present application also provides a file transmission device, which can be integrated into an electronic device, such as a sending terminal, which can include a tablet computer, a laptop computer and / or a personal computer, etc.
[0408] For example, Fig.15 As shown, the file transmission device may include a fourth display unit 501, a sending unit 502, and a fifth display unit 503, as follows:
[0409] (1) a fourth display unit 501;
[0410] The fourth display unit 501 may be used to display a file sending page, where the file sending page includes a target file and a sending control for the target file.
[0411] (2) a sending unit 502;
[0412] The sending unit 502 may be configured to send the target file to the receiving terminal in response to a trigger operation on the sending control, so that the receiving terminal receives the target file when the sending terminal sends the target file.
[0413] For example, the sending unit 502 can be used to split the target file in response to a trigger operation on the sending control to obtain at least one candidate file block; filter out at least one current file block from the candidate file blocks, and obtain associated file upload information corresponding to the current file block, where the current file block is a file block that has not been uploaded; send the current file block and the associated file upload information to the target server, so that the target server sends the current file block of the target file to the receiving terminal based on the associated file upload information; return to execute the step of filtering out at least one current file block from the candidate file blocks until each candidate file block is a current file block, so that the target server sends each current file block of the target file to the receiving terminal.
[0414] (3) a fifth display unit 503;
[0415] The fifth display unit 503 may be used to display a file transfer page of a target file, where the file transfer page includes a sending progress indicator of the target file.
[0416] For example, the fifth display unit 503 can be used to stop sending the target file to the receiving terminal in response to a trigger operation on the transmission status control control when the sending terminal sends the target file; and replace the sending progress mark with a stop mark for stopping sending the target file.
[0417] For example, the fifth display unit 503 can be used to continue sending the target file to the receiving terminal in response to a trigger operation on the transmission status control control when the sending terminal stops sending the target file; and replace the stop mark with a sending progress mark.
[0418] The fourth display unit 501 of the embodiment of the present application can be used to display a file sending page, which includes a target file and a sending control for the target file; the sending unit 502 can be used to send the target file to the receiving terminal in response to a trigger operation on the sending control, so that the receiving terminal receives the target file when the sending terminal sends the target file; the fifth display unit 503 can be used to display a file transfer page for the target file, which includes a sending progress indicator of the target file. Since the sending terminal of the embodiment of the present application can send the target file to the receiving terminal in response to a trigger operation on the sending control, so that the receiving terminal receives the target file when the sending terminal sends the target file, the file transfer efficiency between the sending terminal and the receiving terminal is improved. Then, the embodiment of the present application can also display the sending progress indicator of the target file in the file transfer page, so that the user can perceive the sending progress of the target file, thereby improving the user's experience of transferring files.
[0419] In order to better implement the above method, an embodiment of the present application further provides a file transmission device, which can be integrated in an electronic device, such as a server.
[0420] For example, Fig.16 As shown, the file transmission device may include a receiving unit 601, an updating unit 602, a screening unit 603 and a returning unit 604, as follows:
[0421] (1) receiving unit 601;
[0422] The receiving unit 601 may be configured to receive at least one current file block of a target file and associated file upload information of the current file block sent by a sending terminal.
[0423] (2) Update unit 602;
[0424] The updating unit 602 may be configured to update the preset file set based on the current file block and the associated file upload information to obtain an updated file set.
[0425] For example, the target server includes a cache server and a storage server; the update unit 602 can be used to use the cache server to update the preset file set based on the current file block and the associated file upload information to obtain an updated file set; use the cache server to send the current file block and the associated file upload information to the storage server; use the storage server to receive the current file block and the associated file upload information, and based on the current file block and the associated file upload information, update the preset file data set to obtain an updated file data set.
[0426] (3) screening unit 603;
[0427] The screening unit 603 may be configured to screen out the file blocks corresponding to the target file download information and the associated file download information corresponding to the file blocks from the preset file set when receiving the target file download information sent by the receiving terminal.
[0428] (4) Return unit 604;
[0429] The returning unit 604 may be used to return the file block and the associated file download information to the receiving terminal, so that the receiving terminal can obtain the target file when the sending terminal sends the target file.
[0430] The present application also provides an electronic device, such as Fig.17 As shown, it shows a schematic diagram of the structure of an electronic device involved in an embodiment of the present invention, specifically:
[0431] The electronic device may include components such as a processor 401 with one or more processing cores, a memory 402 with one or more computer-readable storage media, a power supply 403, and an input unit 404. Those skilled in the art will appreciate that Fig.17 The electronic device structure shown in the figure does not constitute a limitation on the electronic device, and may include more or fewer components than shown in the figure, or combine certain components, or arrange the components differently.
[0432] The processor 401 is the control center of the electronic device, and uses various interfaces and lines to connect various parts of the entire electronic device. By running or executing software programs and / or modules stored in the memory 402, and calling data stored in the memory 402, the processor 401 performs various functions of the electronic device and processes data. Optionally, the processor 401 may include one or more processing cores; preferably, the processor 401 may integrate an application processor and a modem processor, wherein the application processor mainly processes the operating system, user interface, and application programs, and the modem processor mainly processes wireless communications. It is understandable that the above-mentioned modem processor may not be integrated into the processor 401.
[0433] The memory 402 can be used to store software programs and modules. The processor 401 executes various functional applications and data processing by running the software programs and modules stored in the memory 402. The memory 402 may mainly include a program storage area and a data storage area, wherein the program storage area may store an operating system, an application required for at least one function (such as a sound playback function, an image playback function, etc.), etc.; the data storage area may store data created according to the use of the electronic device, etc. In addition, the memory 402 may include a high-speed random access memory, and may also include a non-volatile memory, such as at least one disk storage device, a flash memory device, or other volatile solid-state storage devices. Accordingly, the memory 402 may also include a memory controller to provide the processor 401 with access to the memory 402.
[0434] The electronic device also includes a power supply 403 for supplying power to each component. Preferably, the power supply 403 can be logically connected to the processor 401 through a power management system, so as to manage charging, discharging, power consumption and other functions through the power management system. The power supply 403 can also include one or more DC or AC power supplies, recharging systems, power failure detection circuits, power converters or inverters, power status indicators and other arbitrary components.
[0435] The electronic device may further include an input unit 404, which may be used to receive input digital or character information and generate keyboard, mouse, joystick, optical or trackball signal input related to user settings and function control.
[0436] Although not shown, the electronic device may further include a display unit, etc., which will not be described in detail herein. Specifically in this embodiment, the processor 401 in the electronic device will load the executable files corresponding to the processes of one or more application programs into the memory 402 according to the following instructions, and the processor 401 will run the application programs stored in the memory 402, thereby realizing various functions, as follows:
[0437] A file receiving page is displayed, the file receiving page includes a receiving control for a target file, the target file includes a file sent by a sending terminal to a receiving terminal; in response to a trigger operation on the receiving control, a file downloading page for the target file is displayed, the file downloading page includes file sending status information, the file sending status information indicates that the sending terminal is sending the target file; when the sending terminal completes sending the target file, download progress information of the target file is displayed on the file downloading page, the download progress information indicates that part of the target file has been downloaded.
[0438] The specific implementation of the above operations can be found in the previous embodiments, which will not be described in detail here.
[0439] Those skilled in the art will appreciate that all or part of the steps in the various methods of the above embodiments may be completed by a computer program, or by controlling related hardware through a computer program. The computer program may be stored in a computer-readable storage medium and loaded and executed by a processor.
[0440] To this end, an embodiment of the present application provides a computer-readable storage medium, in which a computer program is stored. The computer program can be loaded by a processor to execute any file transfer method provided in the embodiment of the present application.
[0441] The specific implementation of the above operations can be found in the previous embodiments, which will not be described in detail here.
[0442] The computer-readable storage medium may include: a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk, etc.
[0443] Since the instructions stored in the computer-readable storage medium can execute the steps in any file transfer method provided in the embodiments of the present application, the beneficial effects that can be achieved by any file transfer method provided in the embodiments of the present application can be achieved. Please refer to the previous embodiments for details and will not be repeated here.
[0444] According to one aspect of the present application, a computer program product or a computer program is provided, the computer program product or the computer program includes computer instructions, and the computer instructions are stored in a computer-readable storage medium. A processor of an electronic device reads the computer instructions from the computer-readable storage medium, and the processor executes the computer instructions, so that the electronic device executes the method provided in various optional implementations provided in the above embodiments.
[0445] The above is a detailed introduction to a file transfer method, device, electronic device, computer-readable storage medium and computer program product provided in the embodiments of the present application. Specific examples are used in this article to illustrate the principles and implementation methods of the present application. The description of the above embodiments is only used to help understand the method of the present application and its core idea; at the same time, for technical personnel in this field, according to the ideas of the present application, there will be changes in the specific implementation methods and application scopes. In summary, the content of this specification should not be understood as a limitation on the present application.
Claims
1. A file transmission method, characterized in that: Applied to receiving terminals, including: Displaying a file receiving page, the file receiving page including a receiving control for a target file, the target file including a file sent by a sending terminal to the receiving terminal; In response to a trigger operation on the receiving control, displaying a file download page of the target file, the file download page including file sending status information, the file sending status information indicating that the sending terminal is sending the target file; When the sending terminal completes sending the target file, download progress information of the target file is displayed on the file download page, where the download progress information indicates that part of the target file has been downloaded.
2. The file transmission method according to claim 1, characterized in that: The display file receiving page includes: When the sending terminal starts to send the target file, a file message display page corresponding to the target file is displayed, and the file message display page includes a file display control; In response to a triggering operation on the file display control, the file receiving page is displayed.
3. The file transmission method according to claim 2, characterized in that: After displaying the file download page of the target file, the method further includes: When the sending terminal stops sending the target file, a file receiving termination page is displayed, wherein the file receiving termination page includes a page return control and stop transmission indication information of the target file; In response to a trigger operation on the page return control, the file message display page is displayed, and a first file status indicator is displayed on the file message display page, wherein the first file status indicator indicates that the transmission of the target file is terminated.
4. The file transmission method according to claim 1, characterized in that: The file download page includes a cancel control; after the file download page of the target file is displayed, it also includes In response to a triggering operation on the cancel control, displaying the file receiving page; In response to a triggering operation on a receiving control of the file receiving page, the target file continues to be downloaded.
5. The file transmission method according to claim 1, characterized in that: After the download progress information of the target file is displayed on the file download page, the method further includes: When the receiving terminal suspends receiving the target file, a file receiving suspension page is displayed, wherein the file receiving suspension page includes a continue receiving control; In response to the triggering operation on the continue receiving control, the target file continues to be downloaded.
6. The file transmission method according to claim 5, characterized in that: The file suspending receiving page includes a return control; after the display file suspending receiving page, it also includes: In response to a trigger operation on the return control, displaying the file message display page; A second file status indication mark is displayed on the file message display page, and the second file status indication mark indicates that the transmission of the target file is terminated.
7. The file transmission method according to any one of claims 1 to 6, characterized in that: After displaying the file receiving page, the method further includes: In response to a trigger operation on the receiving control, obtaining initial file download information of the target file; Requesting a target server for a file block of the target file and associated file download information corresponding to the file block according to the initial file download information, so that the target server returns the file block and the associated file download information; receiving the associated file download information and the file block, and using the associated file download information as the initial file download information; Return to the step of requesting the target server for the file blocks of the target file and the associated file download information corresponding to the file blocks according to the initial file download information, until each associated file download information is the initial file download information, to obtain multiple file blocks corresponding to the target file, and combine the multiple file blocks to obtain the target file.
8. The file transmission method according to claim 7, characterized in that: The obtaining of initial file download information of the target file includes: Obtaining a file identifier of the target file; Sending a file download request carrying the file identifier to the target server, so that the target server returns the initial file download information based on the file identifier; Initial file download information of the target file is received.
9. The file transmission method according to claim 8, characterized in that: The target server includes a cache server and a storage server; sending a file download request carrying the file identifier to the target server so that the target server returns the initial file download information based on the file identifier, including: Sending a file download request carrying the file identifier to the cache server so that the cache server queries initial file download information corresponding to the file identifier; When the initial file download information returned by the cache server is not received, sending a file download request carrying the file identifier to the storage server, so that the storage server returns the initial file download information based on the file identifier; Receive initial file download information returned by the storage server.
10. The file transmission method according to claim 7, characterized in that: The initial file download information includes file block download information and reference download information associated with the file block download information; the requesting the target server for the file block of the target file and the associated file download information corresponding to the file block according to the initial file download information includes: Merging the file block download information and the reference download information to obtain merged download information; Based on the fused download information, a request is made to the target server for the file blocks of the target file and the associated file download information corresponding to the file blocks.
11. The file transmission method according to claim 10, characterized in that: The requesting the target server for the file block and the associated file download information corresponding to the file block based on the fused download information includes: Identifying, in the fused download information, a current transmission status of a file block corresponding to the fused download information; When the current transmission state is the uploaded state, the target server is requested to obtain the file block corresponding to the associated file download information and the associated file download information corresponding to the file block.
12. A file transmission method, characterized in that: Applicable to the sending terminal, including: Displaying a file sending page, the file sending page including a target file and a sending control for the target file; In response to a trigger operation on the sending control, sending the target file to a receiving terminal, so that the receiving terminal receives the target file when the sending terminal sends the target file; A file transfer page of the target file is displayed, wherein the file transfer page includes a sending progress indicator of the target file.
13. The file transmission method according to claim 11, characterized in that: The file transfer page further includes a transfer status control corresponding to the sending progress indicator; after the file transfer page displaying the target file, the page further includes: When the sending terminal sends the target file, in response to a trigger operation on the transmission status control control, stop sending the target file to the receiving terminal; The sending progress mark is replaced by a stop mark for stopping sending the target file.
14. The file transmission method according to claim 13, characterized in that: After replacing the sending progress mark with a stop mark for stopping sending the target file, the method further includes: When the sending terminal stops sending the target file, in response to a trigger operation on the transmission status control control, continue to send the target file to the receiving terminal; The stop mark is replaced by the sending progress mark.
15. The file transmission method according to claim 13, characterized in that: After stopping sending the target file to the receiving terminal, the method further includes: When the stop time of stopping sending the target file to the receiving terminal exceeds a preset time threshold, in response to a trigger operation on the transmission status control control, displaying a resending page, the resending page including a resending control; In response to a trigger operation on the resending control, the target file is resent to the receiving terminal.
16. The file transmission method according to claim 12, characterized in that: The sending of the target file to the receiving terminal in response to the triggering operation on the sending control includes: In response to a trigger operation on the sending control, splitting the target file to obtain at least one candidate file block; Filtering out at least one current file block from the candidate file blocks, and acquiring associated file upload information corresponding to the current file block, wherein the current file block is a file block that has not been uploaded; Sending the current file block and the associated file upload information to a target server, so that the target server sends the current file block of the target file to the receiving terminal based on the associated file upload information; Return to the step of selecting at least one current file block from the candidate file blocks until each of the candidate file blocks is the current file block, so that the target server sends each current file block of the target file to the receiving terminal.
17. The file transmission method according to claim 16, characterized in that: The obtaining the associated file upload information corresponding to the current file block includes: Acquire preset file transmission information corresponding to the current file block, and detect upload status information of the uploaded target file blocks in the candidate file blocks; Based on the upload status information, the preset file transmission information is updated to obtain the file upload information corresponding to the current file block.
18. A file transmission method, characterized in that: Applied to the target server, including: Receiving at least one current file block of a target file and associated file upload information of the current file block sent by a sending terminal; Based on the current file block and the associated file upload information, updating the preset file set to obtain an updated file set; When receiving the target file download information sent by the receiving terminal, filtering out the file block corresponding to the target file download information and the associated file download information corresponding to the file block from the preset file set; The file block and the associated file download information are returned to the receiving terminal so that the receiving terminal can obtain the target file when the sending terminal sends the target file.
19. The file transmission method according to claim 18, characterized in that: The target server includes a cache server and a storage server; the updating of the preset file set based on the current file block and the associated file upload information to obtain the updated file set includes: Using the cache server to update the preset file set based on the current file block and the associated file upload information to obtain an updated file set; After the cache server is used to update the preset file set based on the current file block and the associated file upload information to obtain the updated file set, the method further includes: Using the cache server, sending the current file block and the associated file upload information to the storage server; The storage server is used to receive the current file block and the associated file upload information, and based on the current file block and the associated file upload information, a preset file data set is updated to obtain an updated file data set.
20. The file transmission method according to claim 19, characterized in that: The updated file data set includes a preset binding data subset and a preset upload information subset; the preset file data set is updated based on the current file block and the associated file upload information to obtain an updated file data set, including: Using the storage server to extract reference upload information corresponding to the current file block from the associated file upload information, and binding the current file block and the reference upload information to obtain file block binding data; Using the storage server to update the preset binding data subset based on the file block binding data to obtain an updated binding data subset; Using the storage server to update the preset upload information subset based on the associated file upload information to obtain an updated upload information subset; The update file data set is determined based on the update upload information subset and the update binding data subset.
21. A file transmission device, characterized in that: include: A first display unit, configured to display a file receiving page, wherein the file receiving page includes a receiving control for a target file, wherein the target file includes a file sent by a sending terminal to the receiving terminal; A second display unit, configured to display a file download page of the target file in response to a trigger operation on the receiving control, wherein the file download page includes file sending status information, and the file sending status information indicates that the sending terminal is sending the target file; A third display unit is configured to display download progress information of the target file on the file download page when the sending terminal completes sending the target file, wherein the download progress information indicates that part of the target file has been downloaded.
22. A file transmission device, characterized in that: include: a fourth display unit, configured to display a file sending page, wherein the file sending page includes a target file and a sending control for the target file; a sending unit, configured to send the target file to a receiving terminal in response to a trigger operation on the sending control, so that the receiving terminal receives the target file when the sending terminal sends the target file; A fifth display unit is used to display a file transfer page of the target file, wherein the file transfer page includes a sending progress indicator of the target file.
23. An electronic device, characterized in that: It comprises a processor and a memory, wherein the memory stores an application program, and the processor is used to run the application program in the memory to execute the steps in the file transmission method according to any one of claims 1 to 20.
24. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, and the computer program is suitable for being loaded by a processor to execute the file transmission method according to any one of claims 1 to 20.
25. A computer program product, characterized in that The computer program product stores a computer program, and the computer program is suitable for being loaded by a processor to execute the file transmission method according to any one of claims 1 to 20.