在CURL调用期间,Outlook rest api oauth2 php HTTP错误400

时间:2016-02-12 07:50:50

标签: php email curl outlook-restapi

执行outlook restapi v2.0的PHP快速入门代码,以便使用oauth2授权访问邮件。

完整代码可在此处查看 - " https://dev.outlook.com/RestGettingStarted/Tutorial/php"在" outlook.php"

范围:https://outlook.office.com/mail.read
token_type:承载者 我收到了access_token,expires_in,id_token和id_token_expires_in
和expires_in值是3600

public static function getMessages($access_token, $user_email) {
  $getMessagesParameters = array (
    // Only return Subject, ReceivedDateTime, and From fields
    "\$select" => "Subject,ReceivedDateTime,From",
    // Sort by ReceivedDateTime, newest first
    "\$orderby" => "ReceivedDateTime DESC",
    // Return at most 10 results
    "\$top" => "10"
  );
...

是否需要对" $ getMessagesParameters"进行任何更改?我尝试删除所有内容,但它仍然无法正常工作!(提供400 HTTP错误)

我们访问outlook rest api资源的方式是否有最近的修改?

更新 我使用hotmail帐户创建了一个应用程序,并使用相同的帐户来访问邮件。是因为带有hotmail.com的邮件没有与outlook.com邮件服务完全集成吗?

现在,错误代码已更改为" 404"

在Outlook Sandbox中检查了它,并说明用户收件箱应该启用REST API才能正常工作。

这不是" Office 365 API - Request returned HTTP error 400"(提问者遇到联系人和日历但不是邮件的麻烦)

1 个答案:

答案 0 :(得分:0)

所以你说你在沙箱中收到错误?如果您收到的错误是您的邮箱未启用REST API,那么这就是问题的原因。 Outlook.com帐户(包括Hotmail.com)正在wave中启用,而您的尚未启用。此时无法按需启用它们,因此对于该邮箱,您只需等待。

如果您想立即进行测试,可以在北美创建一个新的Outlook.com帐户,并且应该立即启用它。