锚标签和$ http.get之间的根本区别是什么?

时间:2016-01-29 00:56:49

标签: javascript angularjs node.js http twitter-oauth

我正在使用角度制作一个网络应用程序,我想知道当我点击这样的标签时有什么不同......

<a href="/auth/twitter" target="_self" class="btn btn-primary">Login with Twitter OAuth</a>

与单击触发我的服务中的功能的按钮相比。

$http.get('/auth/twitter')

后者导致No'Access-Control-Allow-Origin'错误而第一个错误。所以他们之间有一些不同,但我无法弄清楚或搜索它是什么。

2 个答案:

答案 0 :(得分:4)

您应该使用$ http.get进行API / AJAX调用,使用锚点进行重定向。

原因是因为$ http.get期望URL返回一个结果,比如原始JSON数据,而不是锚。

由于您只需要重定向,因此无法使用$ http.get方法并使用锚点。

答案 1 :(得分:2)

$http.get使异步&#39; GET&#39;请求使用XMLHttpRequest对象。系统会发送transition: opacity 1s错误消息,因为您的应用会向Twitter发送Cross-Origin XMLHttpRequest

'No Access-Control-Allow-Origin'

进行同步&#39; GET&#39;请求<a href="/auth/twitter" target="_self" class="btn btn-primary">Login with Twitter OAuth</a> 的资源。