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

What is the fundamental difference between an anchor tag and a $http.get?

我正在使用 angular 制作一个网络应用程序,我想知道当我像这样点击一个标签时有什么区别...

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

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

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

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

推特 $http.get makes an asynchronous 'GET' request using the XMLHttpRequest object. The 'No Access-Control-Allow-Origin' error message is sent because your app makes a Cross-Origin XMLHttpRequest

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

"/auth/twitter" 处的资源发出同步 'GET' 请求。

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

原因是因为 $http.get 需要 URL 返回的结果,如原始 JSON 数据,而不是锚点。

因为你只需要一个重定向,你不能使用 $http.get 方法,应该使用一个锚点。