我有忘記密碼的形式,當用戶進入它撞擊後端的電子郵件併發送的電子郵件鏈接用戶,如下在其上。AngularJS忘記密碼
用戶點擊該鏈接,這將調用後端服務上。我如何通過angular
控制此網址?所以,基本上這是調用後端資源,但我希望這個URL也可以在前端處理。
如果這個問題不是那麼清楚,誰能告訴我一個例子的忘了AngularJS和NodJs或任何後端密碼實現。
我有忘記密碼的形式,當用戶進入它撞擊後端的電子郵件併發送的電子郵件鏈接用戶,如下在其上。AngularJS忘記密碼
用戶點擊該鏈接,這將調用後端服務上。我如何通過angular
控制此網址?所以,基本上這是調用後端資源,但我希望這個URL也可以在前端處理。
如果這個問題不是那麼清楚,誰能告訴我一個例子的忘了AngularJS和NodJs或任何後端密碼實現。
如果你可以改變在電子郵件中的鏈接,然後改變它在以下方式:
http://localhost:3000/#/resetpassword/<token>
現在在你的角路線,你需要聽這條路線如下:
angular.module('myApp', ['ngRoute'])
.controller('ResetPasswordController', function($scope, $route, $routeParams, $location) {
//password resetting functionality
})
.config(function($routeProvider, $locationProvider) {
$routeProvider
.when('/resetpassword/:token', {
templateUrl: 'reset.html',
controller: 'ResetPasswordController',
resolve: {
// Call the backend service to check if the token is valid
verifyToken: function($q, $route) {
var deferred = $q.defer();
$http({
method: 'GET',
url: '/reset/' + $route.current.params.token
}).success(function (data) {
deferred.resolve(data);
}).error(function (msg) {
deferred.reject(msg);
});
return deferred.promise;
}
}
})
});
讓我們拿這個失敗,我得到deferred.reject(味精),我可以在我的控制器處理這個任何機會? – Shane
角路由的解析在路由哈希更改之前執行,它們可以作爲使用相同名稱的服務傳遞給控制器。現在,如果決心返回一個承諾,那麼角將等待承諾解決,然後它將繼續流。如果承諾被拒絕,那麼路由更改不會發生。 在你的情況,如果你想要做的還是從控制器的一些功能,那麼,而不是拒絕你需要解決與正確的參數的承諾。 –
這個答案有幫助嗎? –
爲什麼你不改變以下列方式的鏈接:http://本地主機:3000 /#/ resetpassword/55356236t663623/ 並擁有這條路線與routeProvider或stateProvider –
@RajuBera:???? – Shane
你爲什麼不更改如下方式鏈接:http://本地主機:3000 /#/ resetpassword/55356236t663623並有路線這在你與routeProvider或stateProvider –