Produktmallar i Azure API Management
Med Azure API Management kan du anpassa innehållet på utvecklarportalsidorna med hjälp av en uppsättning mallar som konfigurerar deras innehåll. Med dotliquid-syntax och valfri redigerare, till exempel DotLiquid för designers, och en uppsättning lokaliserade strängresurser, Glyph-resurser och sidkontroller, har du stor flexibilitet att konfigurera innehållet på sidorna som du anser lämpligt med hjälp av dessa mallar.
Med mallarna i det här avsnittet kan du anpassa innehållet på produktsidorna i utvecklarportalen.
Anteckning
Exempel på standardmallar ingår i följande dokumentation, men kan komma att ändras på grund av kontinuerliga förbättringar. Du kan visa live-standardmallarna i utvecklarportalen genom att gå till önskade enskilda mallar. Mer information om hur du arbetar med mallar finns i Anpassa API Management utvecklarportalen med hjälp av mallar.
Anteckning
Följande dokumentationsinnehåll handlar om den inaktuella utvecklarportalen. Du kan fortsätta att använda den som vanligt tills den dras tillbaka i oktober 2023, då den tas bort från alla API Management-tjänster. Den inaktuella portalen får bara kritiska säkerhetsuppdateringar. Mer information finns i följande artiklar:
Tillgänglighet
Viktigt
Den här funktionen är tillgänglig på nivåerna Premium, Standard, Basic och Developer för API Management.
Information om funktionstillgänglighet på v2-nivåerna (förhandsversion) finns i översikten över v2-nivåer.
Produktlista
Med mallen Produktlista kan du anpassa brödtexten på produktlistesidan i utvecklarportalen.
Standardmall
<search-control></search-control>
<div class="row">
<div class="col-md-9">
<h2>{% localized "ProductsStrings|PageTitleProducts" %}</h2>
</div>
</div>
<div class="row">
<div class="col-md-12">
{% if products.size > 0 %}
<ul class="list-unstyled">
{% for product in products %}
<li>
<h3><a href="/products/{{product.id}}">{{product.title}}</a></h3>
{{product.description}}
</li>
{% endfor %}
</ul>
<paging-control></paging-control>
{% else %}
{% localized "CommonResources|NoItemsToDisplay" %}
{% endif %}
</div>
</div>
Kontroller
Mallen Product list
kan använda följande sidkontroller.
Datamodell
Egenskap | Typ | Description |
---|---|---|
Sidindelning | Växlingsentitet. | Växlingsinformationen för produktsamlingen. |
Filtrering | Filtreringsentitet . | Filtreringsinformationen för produktlistans sida. |
Produkter | Insamling av produktentiteter. | De produkter som är synliga för den aktuella användaren. |
Exempelmalldata
{
"Paging": {
"Page": 1,
"PageSize": 10,
"TotalItemCount": 2,
"ShowAll": false,
"PageCount": 1
},
"Filtering": {
"Pattern": null,
"Placeholder": "Search products"
},
"Products": [
{
"Id": "56f9445ffaf7560049060001",
"Title": "Starter",
"Description": "Subscribers will be able to run 5 calls/minute up to a maximum of 100 calls/week.",
"Terms": "",
"ProductState": 1,
"AllowMultipleSubscriptions": false,
"MultipleSubscriptionsCount": 1
},
{
"Id": "56f9445ffaf7560049060002",
"Title": "Unlimited",
"Description": "Subscribers have completely unlimited access to the API. Administrator approval is required.",
"Terms": null,
"ProductState": 1,
"AllowMultipleSubscriptions": false,
"MultipleSubscriptionsCount": 1
}
]
}
Produkt
Med produktmallen kan du anpassa produktsidans brödtext i utvecklarportalen.
Standardmall
<h2>{{Product.Title}}</h2>
<p>{{Product.Description}}</p>
{% assign replaceString0 = '{0}' %}
{% if Limits and Limits.size > 0 %}
<h3>{% localized "ProductDetailsStrings|WebProductsUsageLimitsHeader"%}</h3>
<ul>
{% for limit in Limits %}
<li>{{limit.DisplayName}}</li>
{% endfor %}
</ul>
{% endif %}
{% if apis.size > 0 %}
<p>
<b>
{% if apis.size == 1 %}
{% capture apisCountText %}{% localized "ProductDetailsStrings|TextblockSingleApisCount" %}{% endcapture %}
{% else %}
{% capture apisCountText %}{% localized "ProductDetailsStrings|TextblockMultipleApisCount" %}{% endcapture %}
{% endif %}
{% capture apisCount %}{{apis.size}}{% endcapture %}
{{ apisCountText | replace : replaceString0, apisCount }}
</b>
</p>
<ul>
{% for api in Apis %}
<li>
<a href="/docs/services/{{api.Id}}">{{api.Name}}</a>
</li>
{% endfor %}
</ul>
{% endif %}
{% if subscriptions.size > 0 %}
<p>
<b>
{% if subscriptions.size == 1 %}
{% capture subscriptionsCountText %}{% localized "ProductDetailsStrings|TextblockSingleSubscriptionsCount" %}{% endcapture %}
{% else %}
{% capture subscriptionsCountText %}{% localized "ProductDetailsStrings|TextblockMultipleSubscriptionsCount" %}{% endcapture %}
{% endif %}
{% capture subscriptionsCount %}{{subscriptions.size}}{% endcapture %}
{{ subscriptionsCountText | replace : replaceString0, subscriptionsCount }}
</b>
</p>
<ul>
{% for subscription in subscriptions %}
<li>
<a href="/developer#{{subscription.Id}}">{{subscription.DisplayName}}</a>
</li>
{% endfor %}
</ul>
{% endif %}
{% if CannotAddBecauseSubscriptionNumberLimitReached %}
<b>{% localized "ProductDetailsStrings|TextblockSubscriptionLimitReached" %}</b>
{% elsif CannotAddBecauseMultipleSubscriptionsNotAllowed == false %}
<subscribe-button></subscribe-button>
{% endif %}
Kontroller
Mallen Product list
kan använda följande sidkontroller.
Datamodell
Egenskap | Typ | Description |
---|---|---|
Produkt | Produkt | Den angivna produkten. |
IsDeveloperSubscribed | boolean | Om den aktuella användaren prenumererar på den här produkten. |
SubscriptionState | antal | Prenumerationens tillstånd. Möjliga tillstånd är: - 0 - suspended – prenumerationen är blockerad och prenumeranten kan inte anropa några API:er för produkten.- 1 - active – prenumerationen är aktiv.- 2 - expired – prenumerationen nådde utgångsdatumet och inaktiverades.- 3 - submitted – prenumerationsbegäran har gjorts av utvecklaren, men har ännu inte godkänts eller avvisats.- 4 - rejected – prenumerationsbegäran har nekats av en administratör.- 5 - cancelled – prenumerationen har avbrutits av utvecklaren eller administratören. |
Gränser | matris | Den här egenskapen är inaktuell och bör inte användas. |
DelegatedSubscriptionEnabled | boolean | Om delegering är aktiverat för den här prenumerationen. |
DelegatedSubscriptionUrl | sträng | Om delegering är aktiverad, den delegerade prenumerations-URL:en. |
IsAgreed | boolean | Om produkten har villkor, om den aktuella användaren har godkänt villkoren. |
Prenumerationer | Samling prenumerationssammanfattningsentiteter . | Prenumerationerna på produkten. |
Api | Insamling av API-entiteter . | API:erna i den här produkten. |
CannotAddBecauseSubscriptionNumberLimitReached | boolean | Om den aktuella användaren är berättigad att prenumerera på den här produkten med avseende på prenumerationsgränsen. |
CannotAddBecauseMultipleSubscriptionsNotAllowed | boolean | Om den aktuella användaren är berättigad att prenumerera på den här produkten när det gäller flera prenumerationer som tillåts eller inte. |
Exempelmalldata
{
"Product": {
"Id": "56f9445ffaf7560049060001",
"Title": "Starter",
"Description": "Subscribers will be able to run 5 calls/minute up to a maximum of 100 calls/week.",
"Terms": "",
"ProductState": 1,
"AllowMultipleSubscriptions": false,
"MultipleSubscriptionsCount": 1
},
"IsDeveloperSubscribed": true,
"SubscriptionState": 1,
"Limits": [],
"DelegatedSubscriptionEnabled": false,
"DelegatedSubscriptionUrl": null,
"IsAgreed": false,
"Subscriptions": [
{
"Id": "56f9445ffaf7560049070001",
"DisplayName": "Starter (default)"
}
],
"Apis": [
{
"id": "56f9445ffaf7560049040001",
"name": "Echo API",
"description": null,
"serviceUrl": "http://echoapi.cloudapp.net/api",
"path": "echo",
"protocols": [
2
],
"authenticationSettings": null,
"subscriptionKeyParameterNames": null
}
],
"CannotAddBecauseSubscriptionNumberLimitReached": false,
"CannotAddBecauseMultipleSubscriptionsNotAllowed": true
}
Nästa steg
Mer information om hur du arbetar med mallar finns i Anpassa API Management utvecklarportalen med hjälp av mallar.