import { Component, OnInit } from '@angular/core'; import { HttpClient, HttpHeaders } from '@angular/common/http'; import { AppConfiguration } from '../AppConfiguration'; import { FileSaverService } from 'ngx-filesaver'; import { environment } from 'src/environments/environment.prod'; @Component({ selector: 'app-datasets', templateUrl: './datasets.component.html', styleUrls: ['./datasets.component.scss'] }) export class DatasetsComponent implements OnInit { dataresult: any; itemsdatasets: any; constructor( private appConfig: AppConfiguration, private http: HttpClient, private _FileSaverService: FileSaverService, ) { } ngOnInit() { } listdatasets() { var myHeaders = new Headers(); myHeaders.append("Content-Type", "Application/json"); var myInit = { method: 'GET', headers: myHeaders}; var myRequest = new Request('https://data.inra.fr/api/search?q=*&type=dataset&start=60000&show_entity_ids=true',myInit); fetch(myRequest, myInit) .then(response => { response.json() .then(data => { this.dataresult =JSON.stringify(data['data']['total_count']); this.itemsdatasets = data['data']['items']; for (var i = 0; i < this.itemsdatasets.length; i++) { this.createdataset((JSON.stringify(data['data']['items'][i]['entity_id']))); } }); }); return null; } createdataset(id: String) { console.log(id); let data: string; data ='\ @prefix dcat: <http://www.w3.org/ns/dcat#>.\n\ @prefix dct: <http://purl.org/dc/terms/>.\n\ @prefix language: <http://id.loc.gov/vocabulary/iso639-1/>.\n\ @prefix s: <http://sandbox9.cines.fr/>.\n\ @prefix c: <http://sandbox9.cines.fr/catalog/>.\n\ \n\ s:new\n\ a dcat:Dataset, dcat:Resource;\n\ dct:description "descr";\n\ dct:hasVersion "1.0";\n\ dct:isPartOf c:186e50ee-339d-4bae-818f-969977f6e57a;\n\ dct:language language:en;\n\ dct:license <http://rdflicense.appspot.com/rdflicense/cc-by-nc-nd3.0>;\n\ dct:title "data1";\n\ dcat:keyword "toto".\n' const httpOptions = { headers: new HttpHeaders({ 'Accept': 'text/turtle', 'Content-Type': 'text/turtle', 'Authorization': 'Bearer '+ environment.token }) }; return this.http.post(this.appConfig.fdpurl+"/dataset", data, httpOptions ).subscribe( (r)=>{console.log('got r', r)}) ; } }