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

问题描述:

执行outlook restapi v2.0的PHP快速启动代码以使用oauth2授权访问邮件。Outlook rest api oauth2 php CURL调用期间的HTTP错误400

完整的代码可以在这里观看 - “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休息api资源的方式吗?

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

现在的错误代码更改为“404”

经过它在Outlook中沙盒,他们指出,用户收件箱中应启用REST API为它工作。

这不是“Office 365 API - Request returned HTTP error 400”重复(在提问与联系人和日历,但不是邮件的烦恼)

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

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