Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/30.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Angular 2 Typescript和AJAX提交SPARQL查询_Ajax_Angular_Typescript_Sparql - Fatal编程技术网

使用Angular 2 Typescript和AJAX提交SPARQL查询

使用Angular 2 Typescript和AJAX提交SPARQL查询,ajax,angular,typescript,sparql,Ajax,Angular,Typescript,Sparql,我正在用SPARQL查询DBPedia。查询工作正常。现在我想在Angular 2项目中从这个查询中获取数据。我们需要用AJAX来实现这一点。给定的方法如下所示:getSPARQLTypes():void{}我不知道如何将SPARQL与AJAX和Typescript一起使用。您可以使用框架提供的Http服务来完成这项工作 你在另一篇文章中描述的请求看起来像这样 从'@angular/core'导入{Component}; 从“@angular/Http”导入{Http,RequestOption

我正在用SPARQL查询DBPedia。查询工作正常。现在我想在Angular 2项目中从这个查询中获取数据。我们需要用AJAX来实现这一点。给定的方法如下所示:
getSPARQLTypes():void{}
我不知道如何将SPARQL与AJAX和Typescript一起使用。

您可以使用框架提供的Http服务来完成这项工作

你在另一篇文章中描述的请求看起来像这样

从'@angular/core'导入{Component};
从“@angular/Http”导入{Http,RequestOptionsArgs,Headers,URLSearchParams};
导入“rxjs/add/operator/map”
@组成部分({
选择器:'应用程序根',
templateUrl:“./app.component.html”,
样式URL:['./app.component.css']
})
导出类AppComponent{
私有sparkqlData=null;
构造函数(私有http:http){}
sparkql(){
让标题:标题=新标题({
“内容类型”:“应用程序/x-www-form-urlencoded”,
“接受”:“应用程序/json”
});
设params=newurlsearchparams();
append('query','SELECT*WHERE{pref?obj}LIMIT 10');
append('format','json');
let选项:requestoptions参数={
标题:标题,
参数:URLSearchParams
};
this.http.get('http://dbpedia.org/sparql,选项)//1
.map(response=>response.json())
.订阅(数据=>{
控制台日志(数据);
this.sparkqlData=data;//3
});
console.log(this.sparkqlData);//2
}
}
您可以保存日期以便以后使用,但请记住,请求是异步的,并且它不会像您预期的那样填充变量


我按照语句的执行顺序添加了注释。

也许RFC有帮助,我发现了这一点:但这是针对angularjs的。如何在angular 2中实现这一点?它与通过Ajax的任何其他HTTP请求一样工作。我不理解这个问题,网上有几十个例子。我用XMLHttpRequest尝试过,效果很好,但是如何将XML请求转换为JSON呢?使用JSON.parse(this.responseText)我得到以下错误:异常:JSON.parse:JSON数据的第1行第1列的意外字符Angular2有一个类似angular1的http服务,您可以在这里找到文档。好的,我修好了。它使用“内容类型”:“应用程序/json”和搜索:参数。非常感谢。如何将响应绑定到变量,以便使用它?@Lileana您确定您了解类型脚本的基本知识吗?我的意思是这不仅仅是基本的…任何网络搜索都会告诉你tutorials@Lileana您想对这些数据做什么?是否将其另存为类属性?我将添加该示例,但在使用它时必须小心,get是异步的,操作可能不会按照写下的顺序进行。