小编And*_*des的帖子

对预检请求的响应未通过访问控制检查

我使用ngResource在Amazon Web Services上调用REST API时收到此错误:

XMLHttpRequest无法加载 http://server.apiurl.com:8000/s/login?login=facebook.对预检请求的响应未通过访问控制检查:请求的资源上不存在"Access-Control-Allow-Origin"标头.原产地" :HTTP //本地主机,因此"是不允许访问. 错误405

服务:

socialMarkt.factory('loginService', ['$resource', function($resource){    
    var apiAddress = "http://server.apiurl.com:8000/s/login/";
    return $resource(apiAddress, { login:"facebook", access_token: "@access_token" ,facebook_id: "@facebook_id" }, {
                getUser: {method:'POST'}
            });
}]);
Run Code Online (Sandbox Code Playgroud)

控制器:

[...]
loginService.getUser(JSON.stringify(fbObj)),
                function(data){
                    console.log(data);
                },
                function(result) {
                    console.error('Error', result.status);
                }
[...]
Run Code Online (Sandbox Code Playgroud)

我正在使用Chrome,我不知道还有什么可以解决这个问题.我甚至将服务器配置为接受来自源的头文件localhost.

javascript ajax http cors http-status-code-405

392
推荐指数
12
解决办法
104万
查看次数

CSRF令牌丢失或不正确.Django + AngularJS

从localhost机器向远程django api发出POST请求时,我收到CSRF令牌丢失或错误.

我在AngularJS上的设置:

.config(['$httpProvider', function($httpProvider){

$httpProvider.defaults.xsrfCookieName = 'csrftoken';
$httpProvider.defaults.xsrfHeaderName = 'X-CSRFToken';

}]);
Run Code Online (Sandbox Code Playgroud)

但我仍然得到CSRF令牌丢失或不正确的错误.

我检查发送的标题是什么,显然有角度没有发送HTTP_X_CSRFTOKEN.

但我可以看到cookie csrftoken =发送的东西.

有谁知道发生了什么?

请求标题

POST /s/login/ HTTP/1.1
Host: server.somewhere.io:8000
Connection: keep-alive
Content-Length: 290
Pragma: no-cache
Cache-Control: no-cache
Accept: application/json, text/plain, */*
Origin: http://localhost
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/48.0.2564.116 Safari/537.36
Content-Type: application/json;charset=UTF-8
Referer: http://localhost/thesocialmarkt/
Accept-Encoding: gzip, deflate
Accept-Language: en-GB,en;q=0.8,en-US;q=0.6,pt-BR;q=0.4,pt;q=0.2
Cookie: csrftoken=hiYq1bCNux1mTeQuI4eNgi97qir8pivi; sessionid=1nn1phjab5yd71yfu5k8ghdch2ho6exc
Run Code Online (Sandbox Code Playgroud)

api django csrf django-csrf angularjs

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

如何在运行不同 php 版本的服务器上安装 Laravel

我在默认情况下在运行 php 5.3 的服务器下安装 laravel 时遇到问题,但我可以选择一个 php 版本在任何特定目录下运行。

guzzlehttp/guzzle 4.1.2 requires php >=5.4.0 -> your PHP version does not satisfy that requirement.
Run Code Online (Sandbox Code Playgroud)

所以我选择 php 5.4 在我试图安装 laravel 的目录上运行,但作曲家不知道我在那个目录中运行 PHP 5.4。

如何解决这个问题?

php laravel composer-php

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

使用 angularJS + ui.router 在 `$stateChangeStart` 上重定向

尝试将未经身份验证的用户重定向到登录屏幕。

我在用着ui.router 和指令来检查登录的用户。但它没有按我的预期工作。它在页面加载之前没有检查,并且我因连续重定向而卡在该页面上。

路由配置:

//User profile
    .state('UserProfile', {
        url: "/u/:id",
        data: {
            restrict: true,
            name: "Your Profile",
            header: true,
            footer: false,
            css: true,
            transparentHeader: true
        },
        templateUrl: "app/partials/user/userProfile.html",
        controller: "userProfileController"
    })

//Login page for not authenticated users
    .state('LoginPage', {
        url: "/login/",
        data: {
            restrict: false,
            name: "Login",
            header: false,
            footer: false,
            css: false,
            transparentHeader: false
        },
        templateUrl: "app/partials/common/loginPage.html",
        controller: "loginController"
    })
Run Code Online (Sandbox Code Playgroud)

服务:

.factory('userService', ['$cookies', function($cookies){

   var userData = {
        isLogged: false,
        userId: "",
        firstName: "",
        profilePic: ""
    }; …
Run Code Online (Sandbox Code Playgroud)

redirect angularjs angular-ui-router

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