小编cba*_*ass的帖子

如何使用AngularJS在浏览器cookie中存储身份验证承载令牌

我使用ASP.net Identity创建了一个承载令牌.在AngularJS中,我编写了这个函数来获取授权数据.

$scope.GetAuthorizeData = function () {
  $http({
    method: 'GET',
    url: "/api/Values",
    headers: { 'authorization': 'bearer <myTokenId>' },
  }).success(function (data) {
    alert("Authorized :D");
    $scope.values = data;
  }).error(function () {
    alert("Failed :(");
  });
};
Run Code Online (Sandbox Code Playgroud)

所以我想将此令牌存储到浏览器cookie中.如果此处存在此令牌,则获取令牌并从IIS服务器获取数据,否则重定向到登录页面以登录以获取新令牌.

同样,如果用户点击退出按钮,它应该从浏览器cookie中删除令牌.

这该怎么做 ?有可能吗?是验证和授权用户的正确方法吗?如果有多个用户令牌怎么办?

javascript asp.net-web-api angularjs asp.net-identity

12
推荐指数
2
解决办法
4万
查看次数

PHP GCM错误消息MismatchSenderId

我正面临着GCM推送通知的问题.我收到以下错误.

{
  "multicast_id":4630467710672911593,
  "success":0,
  "failure":1,
  "canonical_ids":0,
  "results":[{
      "error":"MismatchSenderId"
  }]
}
Run Code Online (Sandbox Code Playgroud)

以下是代码.任何帮助将非常感激.提前致谢.

public function gcmPush() 
{
    $regId = "APA91bHFcgOssQZEqtdUk3EC1ojwC5-LVG3NPV2bMqKyC9rPymR6StmAbz-N7Ss8fnvruZhWWNrR3lmBqpjQItlu00AKHPbltBclUJF-EfC5qG4CF2xiuYYC0NCf8u5rbiYFk8ARhIT4lY2AEPWzGpl1OtTvQEC0gA"; 
    $registatoin_ids = array($regId); 
    $message = array("msg" => 12345); 

    $this->send_notification($registatoin_ids, $message);
}

public function send_notification($registatoin_ids, $message) 
{
  // Set POST variables
  $url = 'https://android.googleapis.com/gcm/send';         
  define('GOOGLE_API_KEY', 'AIzaSyBavsIgQKo1Nf9wKZ5o_fGvE_6MI52LFR0');
  $fields = array(
    'registration_ids' => $registatoin_ids,
    'data' => $message,
  );
  $headers = array(
   'Authorization: key=' . GOOGLE_API_KEY,
   'Content-Type: application/json'
  );

  // Open connection
  $ch = curl_init();

  // Set the url, number of POST vars, POST data
  curl_setopt($ch, …
Run Code Online (Sandbox Code Playgroud)

php android push-notification google-cloud-messaging

8
推荐指数
1
解决办法
1万
查看次数

如何将键/值推入JSON对象

我试图将Id推入Json对象数组.每个对象必须有'"JobId":Value'在发送到apiController之前插入.我试图使用forEach循环,但我被卡住了.现在不是在数组中的每个对象中插入它而是插入数组的末尾.我有一个plunkr设置. plunkr

$scope.array = [{
  ESOURCELINEID:"5464",
  QBRFQLINESUPPLIERPARTNUMBER:"HW12",
  QBRFQLINESUPPLIERQUOTEUOM:"ft"
}, {
  ESOURCELINEID:"8569",
  QBRFQLINESUPPLIERPARTNUMBER:"LT34",
  QBRFQLINESUPPLIERQUOTEUOM:"Meter"
}];

var JobId = 143;
$scope.array.forEach(function (newJobItem) {
    $scope.array.push({'JobId' : JobId});
});

var index = 0;
$scope.array.forEach(function (newJobItem) {
    console.log('newJobItem #' + (index++) + ': ' + JSON.stringify(newJobItem));
});
Run Code Online (Sandbox Code Playgroud)

angularjs

7
推荐指数
1
解决办法
4万
查看次数

MEAN堆栈和bootstrap/bower问题

我正在探索新的开发方式,并且遇到了MEAN堆栈,可以在这里找到 - http://mean.io/#!/

我已经安装了Mongo,Node(加上npm等...)并完成了网站上规定的所有步骤.当我执行grunt(甚至是node server.js)并打开网页时,问题出现了 - 终端显示以下内容:

错误:ENOENT,打开'/Users/xxx/myApp/bower_components/bootstrap/dist/css/bootstrap.css'

第一个问题是,bower_components目录实际上并不存在!我假设这可能是第一个调用点,但是我不能完全确定从哪里开始进行故障排除(我是凉爽的新手).

有没有人有MEAN堆栈的经验和/或如何解决bootstrap/bower_components目录的问题?

任何帮助,将不胜感激.

提前致谢 :)

javascript node.js bower mean-stack

6
推荐指数
1
解决办法
3677
查看次数

Angular ui.router默认页眉

说到ui.router模块,我可以想到三种不同的方法来为每个视图设置默认的页眉和页脚:

DEFAULT HEADER
<CONTENT>
DEFAULT FOOTER
Run Code Online (Sandbox Code Playgroud)

1. ng-include - 将页眉/页脚附加到您的初始.html文件(index.html).

<html>
<div ng-include src="'header.html'"></div>
<div id="content" ui-view></div>
Run Code Online (Sandbox Code Playgroud)

1.1.将代码粘贴到index.html中

<html>
<div><!-- my header code here --></div>
<div id="content" ui-view></div>
Run Code Online (Sandbox Code Playgroud)

2.使用指令解析页眉和页脚.

home.html的

<!-- content -->
<!-- /content -->
<footer></footer>
Run Code Online (Sandbox Code Playgroud)

footerDirective.js

module.directive('footer', function () {
    return {
        restrict: 'E',
        replace: true,
        templateUrl: "footer.html",
        controller: ['$scope', '$filter', function ($scope, $filter) {
        }]
    } 
});
Run Code Online (Sandbox Code Playgroud)

http://gon.to/2013/03/23/the-right-way-of-coding-angularjs-how-to-organize-a-regular-webapp/

3. 没有url的情况下在ui.router上创建一个额外的状态.

然后,状态包装器将包含页眉和页脚,并且不可调用.

$stateProvider
.state('wrapper', {
    templateUrl: 'wrapper.html', // contains html of header and …
Run Code Online (Sandbox Code Playgroud)

javascript angularjs angularjs-directive angular-ui-router angularjs-include

6
推荐指数
1
解决办法
4901
查看次数

创建由多个组件组成的表

所以,当我开始挖掘angular2时,我想我创建了一个列出人物的表格.一个用于创建table(person-list)的组件,另一个用于表(person-list-item)中每个人的组件.

容易发黑,对吗?通过以下输出,我意识到这并不容易.如您所见,表行不遵循表结构.

在此输入图像描述

通过在检查器中查看html,我们也可以看到它<person-list-item>正在破坏表.

在此输入图像描述

有没有办法解决这个问题,或者我应该只是在<person-list>元素中创建表行,以免让浏览器破坏表格?我想这是一个适用于多个组件会破坏某个DOM元素的其他情况的问题.

app.component

import {PersonListComponent} from './person-list.component';
import {Component} from 'angular2/core';

let template=`
<person-list></person-list>
`;

@Component({
    selector:'appz',
    template:template,
    providers:[PersonService],
    directives:[PersonListComponent]
})

export class AppComponent {
    public title;

    constructor(private _personService: PersonService) { 
        this.title=_personService.getPersons();
    }
}
Run Code Online (Sandbox Code Playgroud)

person-list.component

import {Component} from 'angular2/core';
import {PersonListItemComponent} from './person-list-item.component';
import {Person} from './person';

let template=`
    <h3>Persons</h3>
    <table class="table">
        <thead>
            <tr>
                <th>Firstname</th>
                <th>Lastname</th>
                <th>Age</th>
            </tr>
        </thead>
        <tbody>
            <person-list-item 
                [firstName]="'John'"
                [lastName]="'Doe'"
                [age]='44'>
            </person-list-item>
            <person-list-item 
                [firstName]="'Foo'"
                [lastName]="'Bar'"
                [age]='34'>
            </person-list-item> …
Run Code Online (Sandbox Code Playgroud)

javascript angular

6
推荐指数
1
解决办法
1341
查看次数

NPM 包:重命名包目录

我有一个小脚本,用于npm pack打包某个 nodejs 模块。当我解压缩.tgznpm pack命令创建的目录时,里面的目录名为package. 我的问题是是否有办法将此包重命名为项目的实际名称?

包.json

{
   "name": "package_name",
   "version": "0.0.3",
   "description": "A description",
   "main": "server.js",
   "scripts": {
      "test": "echo \"Error: no test specified\" && exit 1"
   },
   "author": "",
   "license": "ISC",
   "dependencies": {
      "request": "2.55.0"
   },
   "devDependencies": {
      "grunt": "0.4.5",
      "grunt-contrib-concat": "0.5.1"
   }
}
Run Code Online (Sandbox Code Playgroud)

这是我正在使用的代码,可能会有所帮助。

npm.load('./some/path', function (er) {
    if (er) {
       res.send("er");
    }
    npm.commands.pack(['./another/path'], function (er, data) {
    if (er) {
       res.send("error");
    }

    var fileName = __dirname+"/projectName-0.0.3.tgz";
    res.sendFile(fileName, { …
Run Code Online (Sandbox Code Playgroud)

javascript node.js npm

5
推荐指数
1
解决办法
6553
查看次数

对 stackexchange api 的 Http 请求返回不可读的 json

我正在尝试从 stackexchange api 获取一些 json 数据。接收 OAuth 代码和访问令牌工作正常。但是当调用实际的数据获取端点时,响应看起来确实很奇怪。可能是编码或类似的。

\n\n

该请求如下所示:

\n\n
var client = requestjson.newClient(\'https://api.stackexchange.com\');\n    client.get("/2.2/me/comments?order=desc&sort=creation&site=stackoverflow&access_token="+myToken+"&key="+key, function(err, res, body) {\n        console.log(body);\n    })\n
Run Code Online (Sandbox Code Playgroud)\n\n

然后响应正文如下所示:

\n\n
i\xef\xbf\xbd)\xef\xbf\xbd)QEJ\xef\xbf\xbda\xef\xbf\xbd\xef\xbf\xbdMl\xef\xbf\xbdd4\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd20\xef\xbf\xbdc\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbdM\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd]\xef\xbf\xbdv5/AZ\xef\xbf\xbdm\xef\xbf\xbd\xef\xbf\xbdz    \xef\xbf\xbdC\xef\xbf\xbd\xef\xbf\xbd`\xef\xbf\xbd~\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd*\xcd\xb3`Fh\'\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd<M\xef\xbf\xbd\xef\xbf\xbdk\xef\xbf\xbd\xef\xbf\xbdJ\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbdJ\xef\xbf\xbd\xef\xbf\xbd>       &\xef\xbf\xbd\xef\xbf\xbd\xc8\x97\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbdm\xef\xbf\xbd\xef\xbf\xbdo>U\xef\xbf\xbdn\xef\xbf\xbd\xe9\xb4\xac\xef\xbf\xbdx=M\xef\xbf\xbd\xef\xbf\xbd}1\xef\xbf\xbd\xef\xbf\xbdm\xef\xbf\xbd\xef\xbf\xbd\'\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xcf\xbb\xef\xbf\xbd\xef\xbf\xbd#\n\xef\xbf\xbd\xef\xbf\xbdzDn\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbdn=\xcf\xb3h[\xef\xbf\xbd\xef\xbf\xbdQY\xef\xbf\xbd\xef\xbf\xbdM\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbduv\xef\xbf\xbd*\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd&?;\xef\xbf\xbd\xef\xbf\xbdS\xef\xbf\xbd\xef\xbf\xbd\xd1\x85\xef\xbf\xbdV\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\'{mJ?  \xef\xbf\xbd8/\xef\xbf\xbdW\xef\xbf\xbdq\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xcd\x93\xef\xbf\xbd\xef\xbf\xbd+\xef\xbf\xbd\xef\xbf\xbdqK\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbdX\xef\xbf\xbd9X~\xef\xbf\xbd\xef\xbf\xbdg\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xce\x81YrVY\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbdB\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbdX1#\xef\xbf\xbd`E\n
Run Code Online (Sandbox Code Playgroud)\n\n

我已经尝试过JSON.parse,但它在控制台中抛出错误。

\n

javascript json http node.js stackexchange-api

3
推荐指数
1
解决办法
1531
查看次数

使用Angular ui-router基于状态参数加载控制器

我试图加载一个基于stateparam的控制器,使其可重用

.state("dashboard.item.detail", {
    url: "/detailId/:detailId/detailName/:detailName",
    views: {
       'main@': {
            templateUrl: function ($stateParams){
                //move this to a util function later
                var tempName = unescape($stateParams.detailName);
                tempName = tempName.replace(/\s/g, "-");
                return '../partials/slides/' + tempName + '.html';
            },
            resolve: {
                DetailData: ['DetailService', function(DetailService){
                    return DetailService.getDetails();
                }]
            },
            controller: function ($stateParams) {
                console.log( $stateParams.detailName + 'Ctrl');
                return $stateParams.detailName + 'Ctrl';
            }
        }
      }
})
Run Code Online (Sandbox Code Playgroud)

调节器

    .controller('NemtCtrl', ['$scope', '$rootScope', 'DetailData', function ($scope, $rootScope, detailData) {
    console.log(detailData);
}]);
Run Code Online (Sandbox Code Playgroud)

如果我删除该功能并且只是使用(控制台将记录detailData),控制器将工作

controller: 'NemtCtrl'
Run Code Online (Sandbox Code Playgroud)

但如果我这样做,将不起作用:

controller: function ($stateParams) {
    return …
Run Code Online (Sandbox Code Playgroud)

javascript controllers angularjs angular-ui-router

2
推荐指数
1
解决办法
1838
查看次数

如何从AngularJS中的服务调用ajax?

我有Employee控制器,它具有属性Id,Name,Specification.我已经制作了一个员工服务,该服务具有ajax调用并获得员工列表.但每次都在'用户'.当我调试代码时,我发现它首先调用成功,然后进行Ajax调用.当我在没有服务的情况下进行ajax调用时它工作正常.

 angular.module('EmployeeServiceModule', [])
.service('EmployeeSer', ['$http',function ($http) {
    this.Users = '';
    this.errors = '';
    this.SearchEmployee = function () {
 // Ajax call
        $http({
            method: 'GET',
            url: '/Home/GetEmployeeList',
            params: { filterData: 'Test' },
            headers: { 'Content-Type': 'application/x-www-form-urlencoded' }
        }).then(onSuccess, onError);

        var onSuccess = function (response) {
            this.userUsers = response.data;
            this.errors = '';
        };

        var onError = function (reason) {
            this.userUsers = reason;
            this.errors = "Error in retrieving data.";
        };

        return this.Users;
    }   
}]);


angular.module('Employee', ['EmployeeServiceModule'])
.controller('EmployeeController', ['EmployeeSer', '$scope', '$http', function (EmployeeSer, $scope, …
Run Code Online (Sandbox Code Playgroud)

javascript ajax promise angularjs angular-promise

2
推荐指数
1
解决办法
6348
查看次数

nodejs mongodb不根据id删除

你能帮我处理这段代码吗?当我运行此 url 时,此代码不会从 MongoDB 中删除值:http://localhost:3000/delete/57c6713455a6b92e105c5250

我收到此回复:{"lastErrorObject":{"n":0},"value":null,"ok":1},但未删除 .

app.get('/delete/:id', (req, res) => {
   var uid = req.params.id;
   db.collection('quotes').findOneAndDelete({'_id': uid}, (err, result) => {
      if (err) return res.send(500, err);
      res.send(result);
   }); 
});
Run Code Online (Sandbox Code Playgroud)

javascript mongodb node.js

1
推荐指数
1
解决办法
1314
查看次数