how to post formdata or http.context.form data from angular 6 to asp.net mvc web api or api using Token based authentication with header

how to post formdata or http.context.form data from angular 6 to asp.net mvc web api or api using Token based authentication with header 


_____________________________________________________________________
Create form data :-

const formdata = new FormData();
    formdata.append('postJson', JSON.stringify(postJson));
_____________________________________________________________________
Attach Form data To Form-data object and call contract service to post data :-

this.PostService.Postdata(formdata).then((res: any) => {
      this.loggerService.info(res.status);
      this.responseStatus = res.status;
      this.responseDraftId = res.result.alfResponse.draftId;
      if (res.status === 200) {
        this.responseFilePath = res.result ? (res.result.FullFilePath ? res.result.FullFilePath : '') : '';
        this.showPopup('success', 'Success!', res.result.Reference + ' File has been created successfully.');
      } else {
        this.showPopup('error', 'Error!', 'Error while submit Contract!');
      }
    }).catch(error => {
      this.loggerService.error(error);
      this.showPopup('error', 'Error!', 'Error while submit Contract!');
    });
  }
______________________________________________________________________________
create Service "Post Service" with Promises :-

PostService(data: any): Promise<any> {
        return new Promise((resolve, reject) => {
            this.apiService.postWithformHeader('Contract/GenerateContract', data).subscribe((res: any) => {
                return resolve(res);
            }, (err) => {


                reject(err);
            });
        });
    }
//note apiservice is class name where this method is write
_________________________________________________________________________________

method for form data header Attach with Token :-

postWithformHeader(URL, data) {
    this.spinner.displaySpinner(true);
    const optionsData: any;
if(localstorage.getkey('mytoken'))
{
optionsData = {
      headers: this.createAuthorizationHeader(),
    };
}
else{
this.router.navigate(['login']);
}
    const response = this.http.post(this.appUrl + URL, data,optionsData).map((res => {
      this.spinner.displaySpinner(false);
      return res;
    })).catch((error: any) => {
      this.spinner.displaySpinner(false);
      return this.httpErrorHandler.handleError('api-service', error, URL);
    });

    return response;
  }
  _________________________________________________________________________________
 
  Method for create header :- 

   createAuthorizationHeader() {
    
    let headers = new HttpHeaders();
      headers = headers.append('authorization', 'Bearer ' + localstorage.getkey('mytoken'));
   
     return headers;
  }
  ________________________________________________________________________________

Featured Post

how to find n number of nodes have child or cildren

 how to find n number of nodes have child or cildren for that we use recursive function  const   data = {     'id' : '0' ,...

Popular Posts