Angularjs 如何在Identity 2.1 JS应用程序中处理电子邮件确认URL?

Angularjs 如何在Identity 2.1 JS应用程序中处理电子邮件确认URL?,angularjs,asp.net-identity,asp.net-identity-2,Angularjs,Asp.net Identity,Asp.net Identity 2,我看到了一个使用MVC的示例。它有一个返回URL,会弹出一个屏幕,从发送的电子邮件中调用该屏幕。但是我有一个SPA AngularJS应用程序,所以它有点不同。是否有人试图通过水疗来实现这一点,如果有,他们是如何着手实施的。任何指点都将不胜感激 我现在也在做同样的事情;需要更多的工作,使它漂亮等等,但希望你得到的一般想法 确认URL如下所示: http://localhost:8000/app.html#/confirm/9a28aa89e84e80153b1f2083d38911acbae12

我看到了一个使用MVC的示例。它有一个返回URL,会弹出一个屏幕,从发送的电子邮件中调用该屏幕。但是我有一个SPA AngularJS应用程序,所以它有点不同。是否有人试图通过水疗来实现这一点,如果有,他们是如何着手实施的。任何指点都将不胜感激

我现在也在做同样的事情;需要更多的工作,使它漂亮等等,但希望你得到的一般想法

确认URL如下所示:

http://localhost:8000/app.html#/confirm/9a28aa89e84e80153b1f2083d38911acbae12e8365dd13c83cee55f79481e1f8
(localhost:8000,因为我正在测试)。然后我有一个ui路由器的路由:

var confirm = {
    name: 'confirm',
    url: '/confirm/:auth',
    templateUrl: 'app/front/partial/confirm.html',
    params: {auth: {}}
    } ;
$stateProvider.state(confirm) ;
confirm.html部分(显然需要充实一下!)是:

MyDataService只是一个将$http调用打包到服务器的服务


因此,与“通常”的情况不同,URL调用服务器上的脚本进行工作,然后呈现“you have confirmation”(或not)页面,路由器将浏览器带到一个页面,然后向服务器发出AJAX调用以进行确认。

您仍然需要以同样的方式进行。如果这是您的问题,请使用角度路由跳转到特定页面。如何使用ngRoute执行此操作?
<div ng-controller="Fapi.Front.Confirm.Ctrl">
  CONFIRM
</div>
angular.module('myApp')
    .controller('App.Front.Confirm.Ctrl', [
        '$scope', '$state', '$stateParams', 'toaster', 'MyDataService',
        function ($scope, $state, $stateParams, toaster, MyDataService) {
            MyDataService.confirm (
                {auth: $stateParams.auth},
                function (data) {
                    toaster.pop('success', 'Your registration has been confirmed') ;
                    setTimeout(function () { $state.go('login') }, 5000) ;
                    },
                function (data) {
                    toaster.pop('error', data.message) ;
                    }
                )
        }]) ;