如何从JavaScript验证到Office365

如何从JavaScript验证到Office365,javascript,cordova,office365,Javascript,Cordova,Office365,如何在不使用Visual Studio 2013的JavaScript页面中使用Office365 API对Office365进行身份验证并向SharePoint Online发出REST请求。我想用Cordova/PhoneGap打电话 我需要在JS中包含哪些文件,需要调用什么类型的方法 PS:我不能为帖子创建新的Office365API标签 我使用基本身份验证解决了这个问题。我不知道您使用的是哪个库,所以对于JQuery,它看起来像这样 $.getJSON({ 'url': 'https:/

如何在不使用Visual Studio 2013的JavaScript页面中使用Office365 API对Office365进行身份验证并向SharePoint Online发出REST请求。我想用Cordova/PhoneGap打电话

我需要在JS中包含哪些文件,需要调用什么类型的方法


PS:我不能为帖子创建新的Office365API标签

我使用基本身份验证解决了这个问题。我不知道您使用的是哪个库,所以对于JQuery,它看起来像这样

$.getJSON({
'url': 'https://outlook.office365.com/EWS/OData/Me/Events',
'beforeSend': function(xhr) {
    xhr.setRequestHeader("Authentication",
        "Basic " + encodeBase64(username + ":" + password)
},
success: function(result) {
    alert('done');
}
}))

实际上,我没有使用微软的特定API,我自己编写了所有请求。

虽然您说“不使用Visual Studio 2013”,但我猜您的意思是您想要使用JavaScript和Cordova。您可以使用Visual Studio 2015(或带有Apache Cordova Tools插件的Visual Studio 2013)通过构建一个空白Cordova应用程序,然后使用添加连接服务添加Office 365 API来实现这一点。这将在您的项目中安装许多JavaScript文件,包括授权组件,这些组件将使您能够获得一个访问令牌,您可以在REST调用中使用该令牌

var authContext = new O365Auth.Context();
authContext.getIdToken("https://outlook.office365.com/").then(function (token) {
        token.getAccessToken('https://outlook.office365.com').then(function (accessToken) {
                    var bearerToken = "Bearer " + accessToken;
                    $.ajax(someOffice365RequestUri, {
                        headers: {
                            "Authorization": bearerToken,
                            "Accept": "application/json;odata.metadata=minimal"
                        }
                    }).then(function (response) {
                          // do stuff with response data...
                    });
一旦一切就绪,您当然可以选择使用您喜欢的任何工具进行开发