using (HttpClient client = new HttpClient())
{
client.BaseAddress = new Uri("https://graph.microsoft.com/");
client.DefaultRequestHeaders.Accept.Clear();
client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("image/jpeg"));
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", oauthToken);
// HTTP GET
HttpResponseMessage response = await client.PatchAsync($"v1.0/users/{emailAddress}/photo/$value", byteContent);
if (!response.IsSuccessStatusCode)
{
throw new Exception("Error!");
}
}
403禁止
是不可能使用Graph API做到这一点,还是我在某个地方缺少了一个权限?
SCP值为:calendars.read calendars.read write contacts.read contacts.read write directory.accessasuser.all directory.read.all directory.readwrite.all email exchange.manage files.read files.readwrite.selected files.readwrite.readwrite.selected full_access_asuser group.read.all group.readwrite.readwrite.selected files.readwrite.readwrite.readwrite.readwrite.readwrite.readwrite.readwrite.readwrite.readwrite.readwrite.readwrite.Basic.All用户.ReadWrite用户.ReadWrite.All
首先,您应该看看在//Build 2016期间发布的新的Microsoft Graph SDK这里是Microsoft Graph SDK的Github:https://Github.com/microsoftgraph
这里是我使用它创建的完整示例:https://Github.com/mimetis/nextMeetingsforGraphSample
对于您的问题,下面是我编写的两个方法,它们对我起作用:我假设,您有一个方法可以获得有效的访问令牌。
using (HttpClient client = new HttpClient())
{
var authResult = await AuthenticationHelper.Current.GetAccessTokenAsync();
if (authResult.Status != AuthenticationStatus.Success)
return;
client.DefaultRequestHeaders.Add("Authorization", "Bearer " + authResult.AccessToken);
Uri userPhotoEndpoint = new Uri(AuthenticationHelper.GraphEndpointId + "users/" + userIdentifier + "/Photo/$value");
StreamContent content = new StreamContent(image);
content.Headers.Add("Content-Type", "application/octet-stream");
using (HttpResponseMessage response = await client.PutAsync(userPhotoEndpoint, content))
{
response.EnsureSuccessStatusCode();
}
}
如果您使用Microsoft Graph SDK,它将非常简单:)
GraphServiceClient graphService = new GraphServiceClient(AuthenticationHelper.Current);
var photoStream = await graphService.Users[userIdentifier].Photo.Content.Request().PutAsync(image); //users/{1}/photo/$value
问题内容: 当我选择第一个SelectOnMenu的任何项目时,我想更新第二个SelectOneMenu。现在,我从ManagedBean获取SelectOneMenus的值。我想我必须使用AJAX(jquery)将参数发送到ManagedBean。 问题答案: 实际上,您可以使用ValueChangeListener,当selectOneMenu的值更改时将调用它: 然后,在您的bean中,您可
控制器类别:包装样品;
在 seahub_settings.py 配置文件中可以个性化用户管理 # 是否开启用户注册功能,默认为 `False`,不开启. ENABLE_SIGNUP = False # 用户注册后是否立即激活,默认为 `True`,立即激活。 # 如果设置为 `False`,需管理员在系统管理界面激活用户。 ACTIVATE_AFTER_REGISTRATION = False # 管理员添加新用户后,
我有一个表,它有一个主键,这个主键是用table Generator生成的: @tablegenerator(name=“resourceidgenerator”,table=“sequence”,pkColumnName=“name”,pkColumnValue=“resource_type_id”,valueColumnName=“nextid”,allocationSize=1),它工作得很
问题内容: 我正在寻找不在我的网站页面上显示instagram照片的方法,但是不能显示。如果我只有instagram用户的帐户名(例如jamieoliver),该怎么办?我的网站写在Wordpress上。 需要不显示 我的 图像 问题答案: 此URL格式将返回一个json文件,其中包含来自该用户的最新(20 +/-)媒体文件。 在您的示例中,您可以执行http://instagram.com/ja
您好,我有两个表,其中表1是针对产品的,表2是我想使用this SQL更新的类别,但不断出现语法错误 1064-您的SQL语法有错误;检查与您的MySQL服务器版本对应的手册,在第4行的“WHERE EXISTS(SELECTproduct.local_delivery,product.none”附近使用正确的语法