Nesten en insluiten aanvragen request-nesting-and-embedding
Image Serving ondersteunt het onbeperkt nesten van aanvragen voor beeldweergave, het insluiten van aanvragen voor het renderen van afbeeldingen en het insluiten van afbeeldingen die zijn opgehaald van externe servers. Alleen laagafbeeldingen en laagmaskers ondersteunen deze mechanismen.
Aanvragen voor geneste afbeeldingen section-6954202119e0466f8ff27c79f4f039c8
Een volledige aanvraag voor het leveren van een afbeelding kan als een laagbron worden gebruikt door deze in de opdracht src= (of mask= ) op te geven met behulp van de volgende syntaxis:
…&src=is( nestedRequest)&…
Het token is is hoofdlettergevoelig.
De geneste aanvraag mag niet het hoofdpad van de server bevatten (doorgaans http:// *server*/is/image/' ).
'(',')' ) en de opdrachtscheidingstekens ( '?' , '&' , '=' ) binnen geneste aanvragen mogen niet HTTP-gecodeerd zijn. Geneste aanvragen moeten feitelijk op dezelfde manier worden gecodeerd als de aanvraag voor buitenste (geneste) bestanden.Regels voor voorbewerking worden toegepast op geneste aanvragen.
De volgende opdrachten worden genegeerd wanneer deze worden opgegeven in geneste aanvragen (in de aanvraag-URL of in catalog::Modifier of catalog::PostModifier ):
fmt=qlt=iccEmbed=printRes=quantize=req=bgc=
Als de resultaatafbeelding van de geneste aanvragen maskergegevens (alfa-gegevens) bevat, wordt deze als laagmasker doorgegeven aan de insluitlaag.
Wordt ook genegeerd in attribute::MaxPix en attribute::DefaultPix van de afbeeldingscatalogus die van toepassing is op de geneste aanvraag.
Het afbeeldingsresultaat van een geneste IS-aanvraag kan optioneel in de cache worden opgeslagen door cache=on op te nemen. Het in cache plaatsen van tussentijdse gegevens is standaard uitgeschakeld. Caching zou slechts moeten worden toegelaten wanneer het middenbeeld naar verwachting in een verschillend verzoek binnen een redelijke termijn opnieuw zal worden gebruikt. Standaard cachebeheer op de server is van toepassing. Gegevens worden in cache opgeslagen in een indeling zonder gegevensverlies.
Aanvragen voor het renderen van ingesloten afbeelding section-69c5548db930412b9b90d9b2951a6969
Wanneer de Dynamische Rendering van het Beeld van Media op de server wordt toegelaten, geef verzoeken terug kunnen als laagbronnen worden gebruikt door hen in src= (of mask=) bevel te specificeren. Gebruik de volgende syntaxis:
…&src=ir( *renderRequest*)&…
Het token ir is hoofdlettergevoelig.
renderRequest is de gebruikelijke aanvraag voor het renderen van afbeeldingen, exclusief het HTTP-hoofdpad http:// *server*/ir/render/ .
'(',')' ) en de opdrachtscheidingstekens ( '?' , '&' , '=' ) binnen geneste aanvragen mogen niet HTTP-gecodeerd zijn. Ingesloten aanvragen moeten feitelijk op dezelfde manier worden gecodeerd als de aanvraag voor buitenste insluiten.De volgende opdrachten voor het renderen van afbeeldingen worden genegeerd wanneer deze worden opgegeven in geneste aanvragen:
fmt=qlt=icc=iccEmbed=printRes=req=
Ook worden attribute::MaxPix en attribute::DefaultPix genegeerd van de materiaalcatalogus die van toepassing is op de geneste renderaanvraag.
Het afbeeldingsresultaat van een genest AIR-verzoek kan optioneel in de cache worden opgeslagen door cache=on op te nemen. Het in cache plaatsen van tussentijdse gegevens is standaard uitgeschakeld. Caching zou slechts moeten worden toegelaten wanneer het middenbeeld naar verwachting in een verschillend verzoek binnen een redelijke termijn opnieuw zal worden gebruikt. Standaard cachebeheer op de server is van toepassing. Gegevens worden in cache opgeslagen in een indeling zonder gegevensverlies.
Ingesloten FXG-renderaanvragen section-c817e4b4f7da414ea5a51252ca7e120a
Wanneer de FXG grafische renderer (ook wel AGMServer genoemd) is geïnstalleerd en ingeschakeld met Image Serving, kunnen FXG-aanvragen worden gebruikt als laagbronnen door deze op te geven in src= (of mask= )-opdrachten. Gebruik de volgende syntaxis:
…&src=fxg( renderRequest)&…
Het token fxg is hoofdlettergevoelig.
renderRequest is de gebruikelijke FXG-renderaanvraag, exclusief het HTTP-hoofdpad http:// *server*/agm/render/ .
'(',')' ) en de opdrachtscheidingstekens ( '?' , '&' , '=' ) in geneste aanvragen mogen niet via HTTP worden gecodeerd. Ingesloten aanvragen moeten feitelijk op dezelfde manier worden gecodeerd als de aanvraag voor buitenste insluiten.De volgende FXG-opdrachten worden genegeerd wanneer deze worden opgegeven in geneste aanvragen:
fmt=qlt=icc=iccEmbed=cache=
Externe afbeeldingsbronnen section-84e83ecfcd1a43748cdfc7a6f8c04cb8
Image Serving ondersteunt toegang tot bronafbeeldingen op externe HTTP-servers.
Als u een externe URL wilt opgeven voor een opdracht src= of mask= , moet u het externe URL- of URL-fragment scheiden met haakjes:
…&src=( foreignUrl)&…
Belangrijk De scheidingstekens ( '(',')' ) en de opdrachtscheidingstekens ( '?' , '&' , '=' ) in geneste aanvragen mogen niet via HTTP worden gecodeerd. Ingesloten aanvragen moeten feitelijk op dezelfde manier worden gecodeerd als de aanvraag voor buitenste insluiten.
Volledige absolute URL's (als attribute::AllowDirectUrls is ingesteld) en URL's ten opzichte van attribute::RootUrl zijn toegestaan. Er treedt een fout op als een absolute URL is ingesloten en een kenmerk: AllowDirectUrls is 0, of als een relatieve URL is opgegeven en attribute::RootUrl leeg is.
Hoewel externe URL's niet rechtstreeks in de padcomponent van de aanvraag-URL kunnen worden opgegeven, is het mogelijk een voorbewerkingsregel in te stellen om de conversie van relatieve paden naar absolute URL's toe te staan (zie het voorbeeld hieronder).
Externe afbeeldingen worden door de server in het cachegeheugen opgeslagen volgens de headers die bij de HTTP-respons worden geleverd. Als er geen responsheader van het type ETag of Laatst gewijzigd HTTP aanwezig is, wordt de reactie niet in de cache geplaatst. Dit kan slechte prestaties voor herhaalde toegang tot het zelfde buitenlandse beeld veroorzaken, aangezien de Serving van het Beeld het beeld bij elke toegang moet re-halen en opnieuw bevestigen.
Dit mechanisme ondersteunt dezelfde indelingen voor afbeeldingsbestanden die worden ondersteund door het hulpprogramma Image Convert (IC), met uitzondering van bronafbeeldingen met 16 bits per component.
Beperkingen section-fb68e3f0d40947feb94d7bf183b64929
De grootte van de afbeelding die wordt gegenereerd door geneste/ingesloten aanvragen, wordt normaal gesproken automatisch geoptimaliseerd. Als plaatsing in cache van geneste aanvraagafbeeldingen is ingeschakeld, kunnen de prestaties toenemen door de exacte grootte van de geneste afbeelding op te geven, zodat er geen verdere schaling nodig is wanneer het cacheitem opnieuw wordt gebruikt.
De belangrijke Serving van het Beeld steunt dubbel-coderen van genestelde of ingebedde verzoeken niet. Geneste en ingesloten aanvragen moeten net als eenvoudige aanvragen HTTP-gecodeerd zijn.
Voorbeelden section-d800cfc31abe46d2a964f8e7929231f1
Lagen malplaatje met caching:
Met nesten kunt u caching toevoegen aan een laagsjabloon. Een beperkt aantal achtergrondafbeeldingen wordt bedekt met zeer variabele tekst. De eerste sjabloontekenreeks ziet er als volgt uit:
layer=0&src=$img$&size=300,300&layer=1&text=$txt$
Met kleine wijzigingen kunnen we de afbeelding met laag 0 vooraf schalen en deze blijvend in cache plaatsen, waardoor de serverlading afneemt:
layer=0&src=is(?src=$img$&size=300,300&cache=on)&layer=1&text=$txt$
Inbeddend verzoeken om Dynamisch het Beeld dat van Media teruggeeft
Met behulp van een sjabloon die is opgeslagen in myCatalog/myTemplate ; genereer de afbeelding voor laag2 van de sjabloon met behulp van Dynamic Media Image Rendering:
http://server/is/image/myCatalog/myTemplate?layer=2&src=ir(myRenderCatalog/myRenderObject?id=myIdValue&sel=group&src=is(myCatalog/myTexture1?res=30)&res=30)&wid=300
Noteer de geneste accolades. Met de aanvraag Afbeelding renderen sluit u een aanroep terug naar Image Serving om een herhaalbare structuur op te halen.
Zie ook section-109a0a9a3b144158958351139c8b8e69
src= , mask= , Verzoek PreProcessing , Beeld dat Verwijzing teruggeeft, Malplaatjes , Beeld dat Hulpprogramma's van de Beelddiensten