更新 regionalAndLanguageSettings
本文内容
命名空间:microsoft.graph
重要
Microsoft Graph版本下的 /beta API 可能会发生更改。 不支持在生产应用程序中使用这些 API。 若要确定 API 是否在 v1.0 中可用,请使用 版本 选择器。
更新 regionalAndLanguageSettings 对象的部分或全部属性。
权限
需要以下权限之一才能调用此 API。要了解包括如何选择权限的详细信息,请参阅权限 。
权限类型
权限 (从最少到大多数特权)
委派(工作或学校帐户)
User.ReadWrite、User.ReadWrite.All
委托 (个人帐户)
User.ReadWrite、User.ReadWrite.All
应用程序
User.ReadWrite、User.ReadWrite.All
HTTP 请求
若要更新用户的所有区域和语言设置,请执行以下操作:
PUT /settings/regionalAndLanguageSettings
若要更新用户区域和语言设置的属性子集,请执行以下操作:
PATCH /settings/regionalAndLanguageSettings
标头
值
Authorization
Bearer {token}。必需。
Content-Type
application/json. Required.
请求正文
PUT :在请求正文中,提供 regionalAndLanguageSettings 对象。
PATCH :仅提供应更新的相关字段的值。 请求正文中不包括的现有属性将保留其以前的值,或根据对其他属性值的更改重新计算。 为了实现最佳性能,不得添加未变化的现有值。
响应
如果成功,此方法将返回 200 响应代码和更新的 regionalAndLanguageSettings 对象。
示例
示例 1:更新已登录用户的整个 regionalAndLanguageSettings 对象
请求
下面展示了示例请求。
PUT https://graph.microsoft.com/beta/me/settings/regionalandlanguagesettings
Content-type: application/json
{
"defaultDisplayLanguage": {
"locale": "en-US"
},
"authoringLanguages": [
{
"locale": "fr-FR"
},
{
"locale": "de-DE"
}
],
"defaultTranslationLanguage": {
"locale": "en-US"
},
"defaultSpeechInputLanguage": {
"locale": "en-US"
},
"defaultRegionalFormat": {
"locale": "en-GB"
},
"regionalFormatOverrides": {
"calendar": "Gregorian Calendar",
"firstDayOfWeek": "Sunday",
"shortDateFormat": "yyyy-MM-dd",
"longDateFormat": "dddd, MMMM d, yyyy",
"shortTimeFormat": "HH:mm",
"longTimeFormat": "h:mm:ss tt",
"timeZone": "Pacific Standard Time"
},
"translationPreferences": {
"translationBehavior": "Yes",
"languageOverrides": [
{
"languageTag": "fr",
"translationBehavior": "Yes"
}
]
}
}
GraphServiceClient graphClient = new GraphServiceClient( authProvider );
var regionalAndLanguageSettings = new RegionalAndLanguageSettings
{
DefaultDisplayLanguage = new LocaleInfo
{
Locale = "en-US"
},
AuthoringLanguages = new List<LocaleInfo>()
{
new LocaleInfo
{
Locale = "fr-FR"
},
new LocaleInfo
{
Locale = "de-DE"
}
},
DefaultTranslationLanguage = new LocaleInfo
{
Locale = "en-US"
},
DefaultSpeechInputLanguage = new LocaleInfo
{
Locale = "en-US"
},
DefaultRegionalFormat = new LocaleInfo
{
Locale = "en-GB"
},
RegionalFormatOverrides = new RegionalFormatOverrides
{
Calendar = "Gregorian Calendar",
FirstDayOfWeek = "Sunday",
ShortDateFormat = "yyyy-MM-dd",
LongDateFormat = "dddd, MMMM d, yyyy",
ShortTimeFormat = "HH:mm",
LongTimeFormat = "h:mm:ss tt",
TimeZone = "Pacific Standard Time"
},
TranslationPreferences = new TranslationPreferences
{
TranslationBehavior = TranslationBehavior.Yes,
LanguageOverrides = new List<TranslationLanguageOverride>()
{
new TranslationLanguageOverride
{
LanguageTag = "fr",
TranslationBehavior = TranslationBehavior.Yes
}
}
}
};
await graphClient.Me.Settings.RegionalAndLanguageSettings
.Request()
.PutAsync(regionalAndLanguageSettings);
const options = {
authProvider,
};
const client = Client.init(options);
const regionalAndLanguageSettings = {
defaultDisplayLanguage: {
locale: 'en-US'
},
authoringLanguages: [
{
locale: 'fr-FR'
},
{
locale: 'de-DE'
}
],
defaultTranslationLanguage: {
locale: 'en-US'
},
defaultSpeechInputLanguage: {
locale: 'en-US'
},
defaultRegionalFormat: {
locale: 'en-GB'
},
regionalFormatOverrides: {
calendar: 'Gregorian Calendar',
firstDayOfWeek: 'Sunday',
shortDateFormat: 'yyyy-MM-dd',
longDateFormat: 'dddd, MMMM d, yyyy',
shortTimeFormat: 'HH:mm',
longTimeFormat: 'h:mm:ss tt',
timeZone: 'Pacific Standard Time'
},
translationPreferences: {
translationBehavior: 'Yes',
languageOverrides: [
{
languageTag: 'fr',
translationBehavior: 'Yes'
}
]
}
};
await client.api('/me/settings/regionalandlanguagesettings')
.version('beta')
.put(regionalAndLanguageSettings);
MSHTTPClient *httpClient = [MSClientFactory createHTTPClientWithAuthenticationProvider:authenticationProvider];
NSString *MSGraphBaseURL = @"https://graph.microsoft.com/beta/";
NSMutableURLRequest *urlRequest = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:[MSGraphBaseURL stringByAppendingString:@"/me/settings/regionalandlanguagesettings"]]];
[urlRequest setHTTPMethod:@"PUT"];
[urlRequest setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
MSGraphRegionalAndLanguageSettings *regionalAndLanguageSettings = [[MSGraphRegionalAndLanguageSettings alloc] init];
MSGraphLocaleInfo *defaultDisplayLanguage = [[MSGraphLocaleInfo alloc] init];
[defaultDisplayLanguage setLocale:@"en-US"];
[regionalAndLanguageSettings setDefaultDisplayLanguage:defaultDisplayLanguage];
NSMutableArray *authoringLanguagesList = [[NSMutableArray alloc] init];
MSGraphLocaleInfo *authoringLanguages = [[MSGraphLocaleInfo alloc] init];
[authoringLanguages setLocale:@"fr-FR"];
[authoringLanguagesList addObject: authoringLanguages];
MSGraphLocaleInfo *authoringLanguages = [[MSGraphLocaleInfo alloc] init];
[authoringLanguages setLocale:@"de-DE"];
[authoringLanguagesList addObject: authoringLanguages];
[regionalAndLanguageSettings setAuthoringLanguages:authoringLanguagesList];
MSGraphLocaleInfo *defaultTranslationLanguage = [[MSGraphLocaleInfo alloc] init];
[defaultTranslationLanguage setLocale:@"en-US"];
[regionalAndLanguageSettings setDefaultTranslationLanguage:defaultTranslationLanguage];
MSGraphLocaleInfo *defaultSpeechInputLanguage = [[MSGraphLocaleInfo alloc] init];
[defaultSpeechInputLanguage setLocale:@"en-US"];
[regionalAndLanguageSettings setDefaultSpeechInputLanguage:defaultSpeechInputLanguage];
MSGraphLocaleInfo *defaultRegionalFormat = [[MSGraphLocaleInfo alloc] init];
[defaultRegionalFormat setLocale:@"en-GB"];
[regionalAndLanguageSettings setDefaultRegionalFormat:defaultRegionalFormat];
MSGraphRegionalFormatOverrides *regionalFormatOverrides = [[MSGraphRegionalFormatOverrides alloc] init];
[regionalFormatOverrides setCalendar:@"Gregorian Calendar"];
[regionalFormatOverrides setFirstDayOfWeek:@"Sunday"];
[regionalFormatOverrides setShortDateFormat:@"yyyy-MM-dd"];
[regionalFormatOverrides setLongDateFormat:@"dddd, MMMM d, yyyy"];
[regionalFormatOverrides setShortTimeFormat:@"HH:mm"];
[regionalFormatOverrides setLongTimeFormat:@"h:mm:ss tt"];
[regionalFormatOverrides setTimeZone:@"Pacific Standard Time"];
[regionalAndLanguageSettings setRegionalFormatOverrides:regionalFormatOverrides];
MSGraphTranslationPreferences *translationPreferences = [[MSGraphTranslationPreferences alloc] init];
[translationPreferences setTranslationBehavior: [MSGraphTranslationBehavior Yes]];
NSMutableArray *languageOverridesList = [[NSMutableArray alloc] init];
MSGraphTranslationLanguageOverride *languageOverrides = [[MSGraphTranslationLanguageOverride alloc] init];
[languageOverrides setLanguageTag:@"fr"];
[languageOverrides setTranslationBehavior: [MSGraphTranslationBehavior Yes]];
[languageOverridesList addObject: languageOverrides];
[translationPreferences setLanguageOverrides:languageOverridesList];
[regionalAndLanguageSettings setTranslationPreferences:translationPreferences];
NSError *error;
NSData *regionalAndLanguageSettingsData = [regionalAndLanguageSettings getSerializedDataWithError:&error];
[urlRequest setHTTPBody:regionalAndLanguageSettingsData];
MSURLSessionDataTask *meDataTask = [httpClient dataTaskWithRequest:urlRequest
completionHandler: ^(NSData *data, NSURLResponse *response, NSError *nserror) {
//Request Completed
}];
[meDataTask execute];
GraphServiceClient graphClient = GraphServiceClient.builder().authenticationProvider( authProvider ).buildClient();
RegionalAndLanguageSettings regionalAndLanguageSettings = new RegionalAndLanguageSettings();
LocaleInfo defaultDisplayLanguage = new LocaleInfo();
defaultDisplayLanguage.locale = "en-US";
regionalAndLanguageSettings.defaultDisplayLanguage = defaultDisplayLanguage;
LinkedList<LocaleInfo> authoringLanguagesList = new LinkedList<LocaleInfo>();
LocaleInfo authoringLanguages = new LocaleInfo();
authoringLanguages.locale = "fr-FR";
authoringLanguagesList.add(authoringLanguages);
LocaleInfo authoringLanguages1 = new LocaleInfo();
authoringLanguages1.locale = "de-DE";
authoringLanguagesList.add(authoringLanguages1);
regionalAndLanguageSettings.authoringLanguages = authoringLanguagesList;
LocaleInfo defaultTranslationLanguage = new LocaleInfo();
defaultTranslationLanguage.locale = "en-US";
regionalAndLanguageSettings.defaultTranslationLanguage = defaultTranslationLanguage;
LocaleInfo defaultSpeechInputLanguage = new LocaleInfo();
defaultSpeechInputLanguage.locale = "en-US";
regionalAndLanguageSettings.defaultSpeechInputLanguage = defaultSpeechInputLanguage;
LocaleInfo defaultRegionalFormat = new LocaleInfo();
defaultRegionalFormat.locale = "en-GB";
regionalAndLanguageSettings.defaultRegionalFormat = defaultRegionalFormat;
RegionalFormatOverrides regionalFormatOverrides = new RegionalFormatOverrides();
regionalFormatOverrides.calendar = "Gregorian Calendar";
regionalFormatOverrides.firstDayOfWeek = "Sunday";
regionalFormatOverrides.shortDateFormat = "yyyy-MM-dd";
regionalFormatOverrides.longDateFormat = "dddd, MMMM d, yyyy";
regionalFormatOverrides.shortTimeFormat = "HH:mm";
regionalFormatOverrides.longTimeFormat = "h:mm:ss tt";
regionalFormatOverrides.timeZone = "Pacific Standard Time";
regionalAndLanguageSettings.regionalFormatOverrides = regionalFormatOverrides;
TranslationPreferences translationPreferences = new TranslationPreferences();
translationPreferences.translationBehavior = TranslationBehavior.YES;
LinkedList<TranslationLanguageOverride> languageOverridesList = new LinkedList<TranslationLanguageOverride>();
TranslationLanguageOverride languageOverrides = new TranslationLanguageOverride();
languageOverrides.languageTag = "fr";
languageOverrides.translationBehavior = TranslationBehavior.YES;
languageOverridesList.add(languageOverrides);
translationPreferences.languageOverrides = languageOverridesList;
regionalAndLanguageSettings.translationPreferences = translationPreferences;
graphClient.me().settings().regionalAndLanguageSettings()
.buildRequest()
.put(regionalAndLanguageSettings);
//THE GO SDK IS IN PREVIEW. NON-PRODUCTION USE ONLY
graphClient := msgraphsdk.NewGraphServiceClient(requestAdapter)
requestBody := msgraphsdk.New()
requestBody.SetAdditionalData(map[string]interface{}{
"authoringLanguages": []Object {
}
}
graphClient.Me().Settings().RegionalAndLanguageSettings().Put(requestBody)
响应
下面展示了示例响应。
HTTP/1.1 204 No Content
示例 2:更新已登录用户的选定属性
请求
下面展示了示例请求。
PATCH https://graph.microsoft.com/beta/me/settings/regionalandlanguagesettings
Content-type: application/json
{
"authoringLanguages": [
{
"locale": "en-US" },
{
"locale": "es-MX" }
],
"defaultRegionalFormat": {
"locale": "en-US"
}
}
GraphServiceClient graphClient = new GraphServiceClient( authProvider );
var regionalAndLanguageSettings = new RegionalAndLanguageSettings
{
AuthoringLanguages = new List<LocaleInfo>()
{
new LocaleInfo
{
Locale = "en-US"
},
new LocaleInfo
{
Locale = "es-MX"
}
},
DefaultRegionalFormat = new LocaleInfo
{
Locale = "en-US"
}
};
await graphClient.Me.Settings.RegionalAndLanguageSettings
.Request()
.UpdateAsync(regionalAndLanguageSettings);
const options = {
authProvider,
};
const client = Client.init(options);
const regionalAndLanguageSettings = {
authoringLanguages: [
{
locale: 'en-US' },
{
locale: 'es-MX' }
],
defaultRegionalFormat: {
locale: 'en-US'
}
};
await client.api('/me/settings/regionalandlanguagesettings')
.version('beta')
.update(regionalAndLanguageSettings);
MSHTTPClient *httpClient = [MSClientFactory createHTTPClientWithAuthenticationProvider:authenticationProvider];
NSString *MSGraphBaseURL = @"https://graph.microsoft.com/beta/";
NSMutableURLRequest *urlRequest = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:[MSGraphBaseURL stringByAppendingString:@"/me/settings/regionalandlanguagesettings"]]];
[urlRequest setHTTPMethod:@"PATCH"];
[urlRequest setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
MSGraphRegionalAndLanguageSettings *regionalAndLanguageSettings = [[MSGraphRegionalAndLanguageSettings alloc] init];
NSMutableArray *authoringLanguagesList = [[NSMutableArray alloc] init];
MSGraphLocaleInfo *authoringLanguages = [[MSGraphLocaleInfo alloc] init];
[authoringLanguages setLocale:@"en-US"];
[authoringLanguagesList addObject: authoringLanguages];
MSGraphLocaleInfo *authoringLanguages = [[MSGraphLocaleInfo alloc] init];
[authoringLanguages setLocale:@"es-MX"];
[authoringLanguagesList addObject: authoringLanguages];
[regionalAndLanguageSettings setAuthoringLanguages:authoringLanguagesList];
MSGraphLocaleInfo *defaultRegionalFormat = [[MSGraphLocaleInfo alloc] init];
[defaultRegionalFormat setLocale:@"en-US"];
[regionalAndLanguageSettings setDefaultRegionalFormat:defaultRegionalFormat];
NSError *error;
NSData *regionalAndLanguageSettingsData = [regionalAndLanguageSettings getSerializedDataWithError:&error];
[urlRequest setHTTPBody:regionalAndLanguageSettingsData];
MSURLSessionDataTask *meDataTask = [httpClient dataTaskWithRequest:urlRequest
completionHandler: ^(NSData *data, NSURLResponse *response, NSError *nserror) {
//Request Completed
}];
[meDataTask execute];
GraphServiceClient graphClient = GraphServiceClient.builder().authenticationProvider( authProvider ).buildClient();
RegionalAndLanguageSettings regionalAndLanguageSettings = new RegionalAndLanguageSettings();
LinkedList<LocaleInfo> authoringLanguagesList = new LinkedList<LocaleInfo>();
LocaleInfo authoringLanguages = new LocaleInfo();
authoringLanguages.locale = "en-US";
authoringLanguagesList.add(authoringLanguages);
LocaleInfo authoringLanguages1 = new LocaleInfo();
authoringLanguages1.locale = "es-MX";
authoringLanguagesList.add(authoringLanguages1);
regionalAndLanguageSettings.authoringLanguages = authoringLanguagesList;
LocaleInfo defaultRegionalFormat = new LocaleInfo();
defaultRegionalFormat.locale = "en-US";
regionalAndLanguageSettings.defaultRegionalFormat = defaultRegionalFormat;
graphClient.me().settings().regionalAndLanguageSettings()
.buildRequest()
.patch(regionalAndLanguageSettings);
//THE GO SDK IS IN PREVIEW. NON-PRODUCTION USE ONLY
graphClient := msgraphsdk.NewGraphServiceClient(requestAdapter)
requestBody := msgraphsdk.NewRegionalAndLanguageSettings()
requestBody.SetAuthoringLanguages( []LocaleInfo {
msgraphsdk.NewLocaleInfo(),
locale := "en-US"
SetLocale(&locale)
msgraphsdk.NewLocaleInfo(),
locale := "es-MX"
SetLocale(&locale)
}
defaultRegionalFormat := msgraphsdk.NewLocaleInfo()
requestBody.SetDefaultRegionalFormat(defaultRegionalFormat)
locale := "en-US"
defaultRegionalFormat.SetLocale(&locale)
graphClient.Me().Settings().RegionalAndLanguageSettings().Patch(requestBody)
Import-Module Microsoft.Graph.Users
$params = @{
AuthoringLanguages = @(
@{
Locale = "en-US"
}
@{
Locale = "es-MX"
}
)
DefaultRegionalFormat = @{
Locale = "en-US"
}
}
# A UPN can also be used as -UserId.
Update-MgUserSettingRegionalAndLanguageSetting -UserId $userId -BodyParameter $params
响应
下面展示了示例响应。
HTTP/1.1 204 No Content