JSON talep dönüştürmeleri
Bu makalede, Azure Active Directory B2C'de (Azure AD B2C) Kimlik Deneyimi Çerçevesi şemasının JSON talep dönüştürmelerini kullanma örnekleri sağlanır. Daha fazla bilgi için bkz . talep dönüştürmeleri.
CreateJsonArray
Bir talep değerinden bir JSON tek öğe dizisi oluşturun. Bu talep dönüştürme işleminin Canlı tanıtımını gözden geçirin.
Öğe | TransformationClaimType | Veri Türü | Notlar |
---|---|---|---|
InputClaim | inputClaim | Dize | Çıkış talebine eklenecek talep. |
OutputClaim | outputClaim | Dize | Bu talep dönüştürmesi çağrıldıktan sonra oluşturulan JSON dizesi. |
CreateJsonArray Örneği
Aşağıdaki örnek tek bir JSON dizisi oluşturur.
<ClaimsTransformation Id="CreateJsonPayload" TransformationMethod="CreateJsonArray">
<InputClaims>
<InputClaim ClaimTypeReferenceId="email" TransformationClaimType="inputClaim" />
</InputClaims>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="result" TransformationClaimType="outputClaim" />
</OutputClaims>
</ClaimsTransformation>
- Giriş talepleri:
- inputClaim: someone@example.com
- Çıkış talepleri:
- outputClaim: ["someone@contoso.com"]
GenerateJson
JSON dizesi oluşturmak için talep değerlerini veya sabitleri kullanın. Nokta gösterimini izleyen yol dizesi, verilerin bir JSON dizesine nereye ekleyebileceğinizi belirtmek için kullanılır. Noktalarla bölündükten sonra, tüm tamsayılar bir JSON dizisinin dizini olarak, tamsayı olmayanlar ise bir JSON nesnesinin dizini olarak yorumlanır.
Bu talep dönüştürme işleminin Canlı tanıtımını gözden geçirin.
Öğe | TransformationClaimType | Veri Türü | Notlar |
---|---|---|---|
InputClaim | Nokta gösterimini izleyen herhangi bir dize | Dize | Talep değerinin eklendiği JSON'un JsonPath değeri. |
InputParameter | Nokta gösterimini izleyen herhangi bir dize | Dize | Sabit dize değerinin eklendiği JSON'un JsonPath değeri. |
OutputClaim | outputClaim | Dize | Oluşturulan JSON dizesi. |
JSON Dizileri
JSON dizisine JSON nesneleri eklemek için dizi adı biçimini ve dizideki dizini kullanın. Dizi sıfır tabanlıdır. Hiçbir sayıyı atlamadan sıfırdan N'ye kadar başlayın. Dizideki öğeler herhangi bir nesne içerebilir. Örneğin, ilk öğe app ve appId adlı iki nesne içerir. İkinci öğe tek bir nesne ( program) içerir. Üçüncü öğe dört nesne, renk, dil, logo ve arka plan içerir.
Aşağıdaki örnekte JSON dizilerinin nasıl yapılandırılır gösterilmektedir.
e-posta dizisi, dinamik değerlerle öğesini InputClaims
kullanır.
değerler dizisi statik değerlerle öğesini InputParameters
kullanır.
<ClaimsTransformation Id="GenerateJsonPayload" TransformationMethod="GenerateJson">
<InputClaims>
<InputClaim ClaimTypeReferenceId="mailToName1" TransformationClaimType="emails.0.name" />
<InputClaim ClaimTypeReferenceId="mailToAddress1" TransformationClaimType="emails.0.address" />
<InputClaim ClaimTypeReferenceId="mailToName2" TransformationClaimType="emails.1.name" />
<InputClaim ClaimTypeReferenceId="mailToAddress2" TransformationClaimType="emails.1.address" />
</InputClaims>
<InputParameters>
<InputParameter Id="values.0.app" DataType="string" Value="Mobile app" />
<InputParameter Id="values.0.appId" DataType="string" Value="123" />
<InputParameter Id="values.1.program" DataType="string" Value="Holidays" />
<InputParameter Id="values.2.color" DataType="string" Value="Yellow" />
<InputParameter Id="values.2.language" DataType="string" Value="Spanish" />
<InputParameter Id="values.2.logo" DataType="string" Value="contoso.png" />
<InputParameter Id="values.2.background" DataType="string" Value="White" />
</InputParameters>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="result" TransformationClaimType="outputClaim" />
</OutputClaims>
</ClaimsTransformation>
Bu talep dönüştürme işleminin sonucu:
{
"values": [
{
"app": "Mobile app",
"appId": "123"
},
{
"program": "Holidays"
},
{
"color": "Yellow",
"language": "Spanish",
"logo": "contoso.png",
"background": "White"
}
],
"emails": [
{
"name": "Joni",
"address": "joni@contoso.com"
},
{
"name": "Emily",
"address": "emily@contoso.com"
}
]
}
Hem giriş taleplerinde hem de giriş parametrelerinde bir JSON dizisi belirtmek için diziyi sıfırdan N'ye kadar öğesinde InputClaims
başlatmanız gerekir. Ardından öğesinde InputParameters
son dizinden dizine devam edin.
Aşağıdaki örnekte hem giriş taleplerinde hem de giriş parametrelerinde tanımlanan bir dizi gösterilmektedir. Values dizisinin values.0
ilk öğesi giriş taleplerinde tanımlanır. Giriş parametreleri dizin bir values.1
ile iki dizin values.2
arasında devam eder.
<ClaimsTransformation Id="GenerateJsonPayload" TransformationMethod="GenerateJson">
<InputClaims>
<InputClaim ClaimTypeReferenceId="app" TransformationClaimType="values.0.app" />
<InputClaim ClaimTypeReferenceId="appId" TransformationClaimType="values.0.appId" />
</InputClaims>
<InputParameters>
<InputParameter Id="values.1.program" DataType="string" Value="Holidays" />
<InputParameter Id="values.2.color" DataType="string" Value="Yellow" />
<InputParameter Id="values.2.language" DataType="string" Value="Spanish" />
<InputParameter Id="values.2.logo" DataType="string" Value="contoso.png" />
<InputParameter Id="values.2.background" DataType="string" Value="White" />
</InputParameters>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="result" TransformationClaimType="outputClaim" />
</OutputClaims>
</ClaimsTransformation>
GenerateJson Örneği
Aşağıdaki örnek, "email" ve "OTP" talep değerine ve sabit dizelere dayalı bir JSON dizesi oluşturur.
<ClaimsTransformation Id="GenerateRequestBody" TransformationMethod="GenerateJson">
<InputClaims>
<InputClaim ClaimTypeReferenceId="email" TransformationClaimType="personalizations.0.to.0.email" />
<InputClaim ClaimTypeReferenceId="otp" TransformationClaimType="personalizations.0.dynamic_template_data.otp" />
<InputClaim ClaimTypeReferenceId="copiedEmail" TransformationClaimType="personalizations.0.dynamic_template_data.verify-email" />
</InputClaims>
<InputParameters>
<InputParameter Id="template_id" DataType="string" Value="d-4c56ffb40fa648b1aa6822283df94f60"/>
<InputParameter Id="from.email" DataType="string" Value="service@contoso.com"/>
<InputParameter Id="personalizations.0.subject" DataType="string" Value="Contoso account email verification code"/>
</InputParameters>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="requestBody" TransformationClaimType="outputClaim"/>
</OutputClaims>
</ClaimsTransformation>
Aşağıdaki talep dönüştürme, SendGrid'e (üçüncü taraf e-posta sağlayıcısı) gönderilen isteğin gövdesi olacak bir JSON dize talebi oluşturur. JSON nesnesinin yapısı, InputParameters'ın noktalı gösterimi ve InputClaims'in TransformationClaimTypes kimlikleri tarafından tanımlanır. Nokta gösterimindeki sayılar dizileri ifade eder. Değerler InputClaims'in değerlerinden ve InputParameters'ın "Value" özelliklerinden gelir.
- Giriş talepleri:
- e-posta, dönüştürme talep türü personalizations.0.to.0.email: "someone@example.com"
- copiedEmail, dönüştürme talep türü personalizations.0.dynamic_template_data.verify-email: "someone@example.com"
- otp, dönüştürme talep türü personalizations.0.dynamic_template_data.otp "346349"
- Giriş parametresi:
- template_id: "d-4c56ffb40fa648b1aa6822283df94f60"
- from.email: "service@contoso.com"
- personalizations.0.subject "Contoso hesabı e-posta doğrulama kodu"
- Çıkış talebi:
outputClaim:
{ "personalizations": [ { "to": [ { "email": "someone@example.com" } ], "dynamic_template_data": { "otp": "346349", "verify-email" : "someone@example.com" }, "subject": "Contoso account email verification code" } ], "template_id": "d-989077fbba9746e89f3f6411f596fb96", "from": { "email": "service@contoso.com" } }
GenerateJson'a başka bir örnek
Aşağıdaki örnek, talep değerlerini ve sabit dizeleri temel alan bir JSON dizesi oluşturur.
<ClaimsTransformation Id="GenerateRequestBody" TransformationMethod="GenerateJson">
<InputClaims>
<InputClaim ClaimTypeReferenceId="email" TransformationClaimType="customerEntity.email" />
<InputClaim ClaimTypeReferenceId="objectId" TransformationClaimType="customerEntity.userObjectId" />
<InputClaim ClaimTypeReferenceId="givenName" TransformationClaimType="customerEntity.firstName" />
<InputClaim ClaimTypeReferenceId="surname" TransformationClaimType="customerEntity.lastName" />
</InputClaims>
<InputParameters>
<InputParameter Id="customerEntity.role.name" DataType="string" Value="Administrator"/>
<InputParameter Id="customerEntity.role.id" DataType="long" Value="1"/>
</InputParameters>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="requestBody" TransformationClaimType="outputClaim"/>
</OutputClaims>
</ClaimsTransformation>
Aşağıdaki talep dönüştürmesi, REST API'ye gönderilen isteğin gövdesi olacak bir JSON dize talebi oluşturur. JSON nesnesinin yapısı, InputParameters'ın noktalı gösterimi ve InputClaims'in TransformationClaimTypes kimlikleri tarafından tanımlanır. Değerler InputClaims'in değerlerinden ve InputParameters'ın "Value" özelliklerinden gelir.
- Giriş talepleri:
- e-posta, dönüştürme talep türü customerEntity.email: "john.s@contoso.com"
- objectId, dönüştürme talep türü customerEntity.userObjectId "aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb"
- givenName, dönüştürme talep türü customerEntity.firstName "John"
- soyad, dönüştürme talep türü customerEntity.lastName "Smith"
- Giriş parametresi:
- customerEntity.role.name: "Yönetici"
- customerEntity.role.id 1
- Çıkış talebi:
requestBody:
{ "customerEntity":{ "email":"john.s@contoso.com", "userObjectId":"aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb", "firstName":"John", "lastName":"Smith", "role":{ "name":"Administrator", "id": 1 } } }
GenerateJson talep dönüştürmesi düz dizeleri kabul eder. Bir giriş talebi bir JSON dizesi içeriyorsa, bu dize kaçılır. Aşağıdaki örnekte yukarıdaki CreateJsonArray'den gelen e-posta çıkışını kullanırsanız [""someone@contoso.com], giriş parametresi olarak e-posta aşağıdaki JSON talebinde gösterildiği gibi görünür:
- Çıkış talebi:
requestBody:
{ "customerEntity":{ "email":"[\"someone@contoso.com\"]", "userObjectId":"aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb", "firstName":"John", "lastName":"Smith", "role":{ "name":"Administrator", "id": 1 } } }
GetClaimFromJson
JSON verilerinden belirtilen bir öğeyi alın. Bu talep dönüştürme işleminin Canlı tanıtımını gözden geçirin.
Öğe | TransformationClaimType | Veri Türü | Notlar |
---|---|---|---|
InputClaim | inputJson | Dize | Öğeyi almak için talep dönüştürmesi tarafından kullanılan talepler. |
InputParameter | claimToExtract | Dize | ayıklanacak JSON öğesinin adı. |
OutputClaim | extractedClaim | Dize | Bu talep dönüştürmesi çağrıldıktan sonra oluşturulan talep, claimToExtract giriş parametresinde belirtilen öğe değeri. |
GetClaimFromJson örneği
Aşağıdaki örnekte, talep dönüştürmesi JSON verilerinden öğesini ayıkladı emailAddress
: {"emailAddress": "someone@example.com", "displayName": "Someone"}
<ClaimsTransformation Id="GetEmailClaimFromJson" TransformationMethod="GetClaimFromJson">
<InputClaims>
<InputClaim ClaimTypeReferenceId="customUserData" TransformationClaimType="inputJson" />
</InputClaims>
<InputParameters>
<InputParameter Id="claimToExtract" DataType="string" Value="emailAddress" />
</InputParameters>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="extractedEmail" TransformationClaimType="extractedClaim" />
</OutputClaims>
</ClaimsTransformation>
- Giriş talepleri:
- inputJson: {"emailAddress": "someone@example.com", "displayName": "Birisi"}
- Giriş parametresi:
- claimToExtract: emailAddress
- Çıkış talepleri:
- extractedClaim: someone@example.com
Başka bir GetClaimFromJson örneği
GetClaimFromJson talep dönüştürmesi, bir JSON verisinden tek bir öğe alır. Yukarıdaki örnekte emailAddress. displayName değerini almak için başka bir talep dönüştürmesi oluşturun. Örneğin:
<ClaimsTransformation Id="GetDisplayNameClaimFromJson" TransformationMethod="GetClaimFromJson">
<InputClaims>
<InputClaim ClaimTypeReferenceId="customUserData" TransformationClaimType="inputJson" />
</InputClaims>
<InputParameters>
<InputParameter Id="claimToExtract" DataType="string" Value="displayName" />
</InputParameters>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="displayName" TransformationClaimType="extractedClaim" />
</OutputClaims>
</ClaimsTransformation>
- Giriş talepleri:
- inputJson: {"emailAddress": "someone@example.com", "displayName": "Birisi"}
- Giriş parametresi:
- claimToExtract: displayName
- Çıkış talepleri:
- extractedClaim: Birisi
GetClaimsFromJsonArray
Json verilerinden belirtilen öğelerin listesini alın. Bu talep dönüştürme işleminin Canlı tanıtımını gözden geçirin.
Öğe | TransformationClaimType | Veri Türü | Notlar |
---|---|---|---|
InputClaim | jsonSourceClaim | Dize | JSON yüküne sahip talep. Bu talep, talepleri almak için talep dönüştürmesi tarafından kullanılır. |
InputParameter | errorOnMissingClaims | boolean | Taleplerden biri eksikse hata verilip verilmeyeceğini belirtir. |
InputParameter | includeEmptyClaims | Dize | Boş taleplerin dahil edilip edilmeyeceğini belirtin. |
InputParameter | jsonSourceKeyName | Dize | Öğe anahtarı adı |
InputParameter | jsonSourceValueName | Dize | Öğe değeri adı |
OutputClaim | Koleksiyon | string, int, boolean ve datetime | Ayıklanması gereken taleplerin listesi. Talebin adı, jsonSourceClaim giriş talebi içinde belirtilen ada eşit olmalıdır. |
GetClaimsFromJsonArray örneği
Aşağıdaki örnekte, talep dönüştürme şu talepleri ayıklar: JSON verilerinden e-posta (dize), displayName (dize), membershipNum (int), etkin (boole) ve doğumTarihi (datetime).
<ClaimsTransformation Id="GetClaimsFromJson" TransformationMethod="GetClaimsFromJsonArray">
<InputClaims>
<InputClaim ClaimTypeReferenceId="jsonSourceClaim" TransformationClaimType="jsonSource" />
</InputClaims>
<InputParameters>
<InputParameter Id="errorOnMissingClaims" DataType="boolean" Value="false" />
<InputParameter Id="includeEmptyClaims" DataType="boolean" Value="false" />
<InputParameter Id="jsonSourceKeyName" DataType="string" Value="key" />
<InputParameter Id="jsonSourceValueName" DataType="string" Value="value" />
</InputParameters>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="email" />
<OutputClaim ClaimTypeReferenceId="displayName" />
<OutputClaim ClaimTypeReferenceId="membershipID" />
<OutputClaim ClaimTypeReferenceId="active" />
<OutputClaim ClaimTypeReferenceId="birthDate" />
</OutputClaims>
</ClaimsTransformation>
Giriş talepleri:
jsonSourceClaim:
[ { "key": "email", "value": "someone@example.com" }, { "key": "displayName", "value": "Someone" }, { "key": "membershipID", "value": 6353399 }, { "key": "active", "value": true }, { "key": "birthDate", "value": "2005-09-23T00:00:00Z" } ]
Giriş parametreleri:
- errorOnMissingClaims: false
- includeEmptyClaims: false
- jsonSourceKeyName: key
- jsonSourceValueName: value
Çıkış talepleri:
- e-posta: "someone@example.com"
- displayName: "Birisi"
- membershipID: 6353399
- etkin: true
- doğum Tarihi: 2005-09-23T00:00:00Z
GetClaimsFromJsonArrayV2
Dize koleksiyonu JSON öğelerinden belirtilen öğelerin listesini alın. Bu talep dönüştürme işleminin Canlı tanıtımını gözden geçirin.
Öğe | TransformationClaimType | Veri Türü | Notlar |
---|---|---|---|
InputClaim | jsonSourceClaim | stringCollection | JSON yükleriyle dize koleksiyonu talebi. Bu talep, talepleri almak için talep dönüştürmesi tarafından kullanılır. |
InputParameter | errorOnMissingClaims | boolean | Taleplerden biri eksikse hata verilip verilmeyeceğini belirtir. |
InputParameter | includeEmptyClaims | Dize | Boş taleplerin dahil edilip edilmeyeceğini belirtin. |
InputParameter | jsonSourceKeyName | Dize | Öğe anahtarı adı |
InputParameter | jsonSourceValueName | Dize | Öğe değeri adı |
OutputClaim | Koleksiyon | string, int, boolean ve datetime | Ayıklanması gereken taleplerin listesi. Talebin adı, jsonSourceClaim giriş talebi içinde belirtilen ada eşit olmalıdır. |
GetClaimsFromJsonArrayV2 örneği
Aşağıdaki örnekte, talep dönüştürme şu talepleri ayıklar: JSON verilerinden e-posta (dize), displayName (dize), membershipNum (int), etkin (boole) ve doğumTarihi (datetime).
<ClaimsTransformation Id="GetClaimsFromJson" TransformationMethod="GetClaimsFromJsonArrayV2">
<InputClaims>
<InputClaim ClaimTypeReferenceId="jsonSourceClaim" TransformationClaimType="jsonSource" />
</InputClaims>
<InputParameters>
<InputParameter Id="errorOnMissingClaims" DataType="boolean" Value="false" />
<InputParameter Id="includeEmptyClaims" DataType="boolean" Value="false" />
<InputParameter Id="jsonSourceKeyName" DataType="string" Value="key" />
<InputParameter Id="jsonSourceValueName" DataType="string" Value="value" />
</InputParameters>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="email" />
<OutputClaim ClaimTypeReferenceId="displayName" />
<OutputClaim ClaimTypeReferenceId="membershipID" />
<OutputClaim ClaimTypeReferenceId="active" />
<OutputClaim ClaimTypeReferenceId="birthDate" />
</OutputClaims>
</ClaimsTransformation>
Giriş talepleri:
jsonSourceClaim[0] (dize koleksiyonu ilk öğesi):
{ "key": "email", "value": "someone@example.com" }
jsonSourceClaim[1] (dize koleksiyonu ikinci öğesi):
{ "key": "displayName", "value": "Someone" }
jsonSourceClaim[2] (dize koleksiyonu üçüncü öğesi):
{ "key": "membershipID", "value": 6353399 }
jsonSourceClaim[3] (dize koleksiyonu dördüncü öğesi):
{ "key": "active", "value": true }
jsonSourceClaim[4] (dize koleksiyonu beşinci öğesi):
{ "key": "birthDate", "value": "2005-09-23T00:00:00Z" }
Giriş parametreleri:
- errorOnMissingClaims: false
- includeEmptyClaims: false
- jsonSourceKeyName: key
- jsonSourceValueName: value
Çıkış talepleri:
- e-posta: "someone@example.com"
- displayName: "Birisi"
- membershipID: 6353399
- etkin: true
- doğum Tarihi: 2005-09-23T00:00:00Z
GetNumericClaimFromJson
Bir JSON verisinden belirtilen sayısal (uzun) öğeyi alır. Bu talep dönüştürme işleminin Canlı tanıtımını gözden geçirin.
Öğe | TransformationClaimType | Veri Türü | Notlar |
---|---|---|---|
InputClaim | inputJson | Dize | JSON yüküne sahip talep. Bu talep, sayısal talebi almak için talep dönüştürmesi tarafından kullanılır. |
InputParameter | claimToExtract | Dize | Ayıklanan JSON öğesinin adı. |
OutputClaim | extractedClaim | uzun | Bu talep dönüştürmesi çağrıldıktan sonra oluşturulan talep, öğenin claimToExtract giriş parametrelerinde belirtilen değeridir. |
GetNumericClaimFromJson örneği
Aşağıdaki örnekte, talep dönüştürmesi JSON verilerinden öğesini ayıklar id
.
<ClaimsTransformation Id="GetIdFromResponse" TransformationMethod="GetNumericClaimFromJson">
<InputClaims>
<InputClaim ClaimTypeReferenceId="exampleInputClaim" TransformationClaimType="inputJson" />
</InputClaims>
<InputParameters>
<InputParameter Id="claimToExtract" DataType="string" Value="id" />
</InputParameters>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="membershipId" TransformationClaimType="extractedClaim" />
</OutputClaims>
</ClaimsTransformation>
Giriş talepleri:
inputJson:
{ "emailAddress": "someone@example.com", "displayName": "Someone", "id": 6353399 }
Giriş parametreleri
- claimToExtract: id
Çıkış talepleri:
- extractedClaim: 6353399
GetSingleItemFromJson
JSON verilerinden ilk öğeyi alır. Bu talep dönüştürme işleminin Canlı tanıtımını gözden geçirin.
Öğe | TransformationClaimType | Veri Türü | Notlar |
---|---|---|---|
InputClaim | inputJson | Dize | JSON yüküne sahip talep. Bu talep, JSON verilerinden öğeyi almak için talep dönüştürmesi tarafından kullanılır. |
OutputClaim | anahtar | Dize | JSON'daki ilk öğe anahtarı. |
OutputClaim | değer | Dize | JSON'daki ilk öğe değeri. |
GetSingleItemFromJson örneği
Aşağıdaki örnekte, talep dönüştürme JSON verilerinden ilk öğeyi (verilen ad) ayıklar.
<ClaimsTransformation Id="GetGivenNameFromResponse" TransformationMethod="GetSingleItemFromJson">
<InputClaims>
<InputClaim ClaimTypeReferenceId="json" TransformationClaimType="inputJson" />
</InputClaims>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="givenNameKey" TransformationClaimType="key" />
<OutputClaim ClaimTypeReferenceId="givenName" TransformationClaimType="value" />
</OutputClaims>
</ClaimsTransformation>
Giriş talepleri:
inputJson:
{ "givenName": "Emily", "lastName": "Smith" }
Çıkış talepleri:
- key: givenName
- değer: Emily
GetSingleValueFromJsonArray
JSON veri dizisinden ilk öğeyi alır. Bu talep dönüştürme işleminin Canlı tanıtımını gözden geçirin.
Öğe | TransformationClaimType | Veri Türü | Notlar |
---|---|---|---|
InputClaim | inputJsonClaim | Dize | JSON yüküne sahip talep. Bu talep, JSON dizisinden değeri almak için talep dönüştürmesi tarafından kullanılır. |
OutputClaim | extractedClaim | Dize | JSON dizisindeki ilk öğe olan bu talep dönüştürmesi çağrıldıktan sonra oluşturulan talep. |
GetSingleValueFromJsonArray örneği
Aşağıdaki örnekte, talep dönüştürmesi JSON dizisindeki ["someone@example.com", "Someone", 6353399]
ilk öğeyi (e-posta adresi) ayıklar.
<ClaimsTransformation Id="GetEmailFromJson" TransformationMethod="GetSingleValueFromJsonArray">
<InputClaims>
<InputClaim ClaimTypeReferenceId="userData" TransformationClaimType="inputJsonClaim" />
</InputClaims>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="email" TransformationClaimType="extractedClaim" />
</OutputClaims>
</ClaimsTransformation>
- Giriş talepleri:
- inputJsonClaim: [""someone@example.com, "Birisi", 6353399]
- Çıkış talepleri:
- extractedClaim: someone@example.com
XmlStringToJsonString
XML verilerini JSON biçimine dönüştürün. Bu talep dönüştürme işleminin Canlı tanıtımını gözden geçirin.
Öğe | TransformationClaimType | Veri Türü | Notlar |
---|---|---|---|
InputClaim | xml | Dize | XML yüküne sahip talep. Bu talep, verileri XML'den JSON biçimine dönüştürmek için talep dönüştürmesi tarafından kullanılır. |
OutputClaim | json | Dize | Bu talep dönüştürmesi çağrıldıktan sonra oluşturulan talep, JSON biçimindeki veriler. |
<ClaimsTransformation Id="ConvertXmlToJson" TransformationMethod="XmlStringToJsonString">
<InputClaims>
<InputClaim ClaimTypeReferenceId="inputXML" TransformationClaimType="xml" />
</InputClaims>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="outputJson" TransformationClaimType="json" />
</OutputClaims>
</ClaimsTransformation>
XmlStringToJsonString Örneği
Aşağıdaki örnekte, talep dönüştürmesi aşağıdaki XML verilerini JSON biçimine dönüştürür.
Giriş talebi:
<user>
<name>Someone</name>
<email>someone@example.com</email>
</user>
Çıkış talebi:
{
"user": {
"name":"Someone",
"email":"someone@example.com"
}
}
Sonraki adımlar
- Azure AD B2C topluluğu GitHub deposunda daha fazla talep dönüştürme örneği bulun