[]
This section demonstrates how to call the Web API service through a client application and generate excel from JSON data file, posted from client.
Step 2: Run the Client Project
The following example makes a call to the Web API service through HTML as well as WinForms client applications. These clients send a POST request to the service, which returns a response stream. This response stream is then saved in the desired excel file format.
In the following example, user provides JSON data file through the client applications. Moreover, the end user needs to specify the service URL, name and appropriate file format of generated excel file through client project. It is so, because the parameters or query string for generating excel are sent in the HTTP message body of the POST request and not in the request URL.
Complete the following steps to call the Web API service.
csharp
private void button1_Click(object sender, EventArgs e) {
var result = openFileDialog1.ShowDialog();
if (result == DialogResult.OK || result == DialogResult.Yes) {
_filePath = openFileDialog1.FileName;
if (!string.IsNullOrEmpty(_filePath)) {
label1.Text = _filePath;
}
}
}
HTML
1. Create an HTML application, as discussed in Configure Client for REST API service.
Add the following markups in the <form> tags, within <body> tags, of your HTML page.
<form action="https://developer.mescius.com/componentone/demos/aspnet/c1WebAPI/latest/api/excel" method="POST" enctype="multipart/form-data">
<label for="data">Json data file:</label>
<input type="file" id="data" name="data" accept=".json" />
<br/><br/>
<label for="fileName">File Name:</label>
<input type="text" id="fileName" name="fileName" value="test"/>
<br /><br />
<label for="fileFormat">File Format:</label>
<input type="text" id="fileFormat" name="type" value="xlsx" />
<br /><br />
<input type="submit" value="Generate Excel"/>
</form>
Note that, for POST request we set method attribute of <form> tag to POST, its enctype attribute to "multipart/form-data" and set its action attribute to service request URL. Also, we create input controls on the HTML page, which take various parameters to generate the excel file from JSON data file posted from client.
WinForms Application
Click Build | Build Solution to build the project.
Press F5 to run the project.
Click Select Data File button, to select and post JSON data file.* Specify the name and appropriate file format of the generated excel, in respective text boxes.
Provide the service URL for POST request (https://developer.mescius.com/componentone/demos/aspnet/c1WebAPI/latest/api/excel) in respective text box, and click the Generate Excel button. The generated excel data file will open.
HTML Application
Save your HTML file and open it in a browser.
Select and post JSON data file.
Set name and appropriate file format for generated excel, and click Generate Excel button.
Explore detailed demo samples of REST API service to generate excel from JSON data file at: