首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Eve Online ESI Curl授权

Eve Online ESI Curl授权
EN

Stack Overflow用户
提问于 2018-05-01 08:55:18
回答 1查看 716关注 0票数 1

尝试使用新的Eve ESI接口,但在尝试进行身份验证时收到以下错误响应:

代码语言:javascript
复制
HTTP/1.1 401 Unauthorized
Cache-Control: private
Server: Microsoft-IIS/8.5
Request-Context: appId=cid-v1:2ccf88f2-29b9-460a-bc15-7c0b79926f61
Date: Tue, 01 May 2018 00:24:50 GMT
Connection: close
Content-Length: 0

下面是我的代码,使用PHP/Curl:

代码语言:javascript
复制
<?php   
    $authcode = base64_encode("{my client ID}:{My Secret Key}");
    $data = array("grant_type" => "authorization_code", "code" => "{code returned by the server}");
    $data_string = json_encode($data);
    $ch = curl_init("https://login.eveonline.com/oauth/token");
    curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
    curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string); 
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
    curl_setopt($ch, CURLOPT_HEADER, array("Content-Type:application/json", "Authorization: Basic " . $authcode)); 

    $result = curl_exec($ch); 

    print_r($result);

    curl_close($ch); 
?> 

你知道我做错了什么吗?我一直在尽可能紧密地遵循用户指南。

谢谢。

EN

回答 1

Stack Overflow用户

发布于 2018-05-18 12:37:54

试试这个:

代码语言:javascript
复制
    //Request Headers payload
    $headerData = array(
        "Authorization:Basic " . base64_encode("{my client ID}:{My Secret Key}"),
        "Content-Type:application/json", 
        'Host:login.eveonline.com'
    )

    //Request Body payload
    $bodyData = array(
        "grant_type" => "authorization_code", 
        "code" => "{code returned by the server}"
    );

    //Curl exec
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL,"https://login.eveonline.com/oauth/token");
    curl_setopt($ch, CURLOPT_POST, 1);
    curl_setopt($ch, CURLOPT_HTTPHEADER, $headerData); 
    curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($bodyData)); 
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
    $result = curl_exec($ch); 
    curl_close($ch); 

    //Server response json decode & display
    $result = json_decode($result, true);
    print_r($result);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50110091

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档