Expand my Community achievements bar.

We are excited to introduce our latest innovation to enhance the Adobe Campaign user experience — the Adobe Campaign v8 Web User Interface!
SOLVED

How to get URL of an Online Public Resource in a Web App

Avatar

Level 6

Hi,

We upload our CSS+JS files and our images in Resources>Online>Public Resources. We would like to get the public URL (available when you select a Resource>tab Preview) from a javascript template and/or a web app.

We tried

xtk.fileRes.get(12435) // not found

xtk.fileRes.get("12435") // not found

xtk.fileRes.get(12435).GetURL() // not found

It would be nice to have

GetPublicURLFromResourceLabel("myLabelHere") // https://instance/res/1414135351.css

// or

ResourceFromLabel("myLabelHere").GetURL()

In short, how to convert a Public Resource to a Public URL?

Or maybe we should store our CSS in another place? What are the best practices for web development into Adobe Campaign?

Thank you

Florian

Adobe Campaign 7 - AC7 - build 8889

1 Accepted Solution

Avatar

Correct answer by
Level 6

1. Use filename instead of md5: Go to Advanced and uncheck Unique file name:

File-Resource-URL-as-filename-instead-of-md5-hash.jpg

2. use xtk.fileRes.GetPublicFileResURL():

var publicResourceURL = xtk.fileRes.GetPublicFileResURL() + "favicon.png"; // http://your-instance-res-url/your_instance/favicon.png

Featured on https://floriancourgey.com/2018/08/modern-web-development-in-adobe-campaign/

View solution in original post

2 Replies

Avatar

Correct answer by
Level 6

1. Use filename instead of md5: Go to Advanced and uncheck Unique file name:

File-Resource-URL-as-filename-instead-of-md5-hash.jpg

2. use xtk.fileRes.GetPublicFileResURL():

var publicResourceURL = xtk.fileRes.GetPublicFileResURL() + "favicon.png"; // http://your-instance-res-url/your_instance/favicon.png

Featured on https://floriancourgey.com/2018/08/modern-web-development-in-adobe-campaign/

Avatar

Level 1

Hi Florian,

There is a function called getImageUrl, which does what you are looking for.

you can either pass the resource ID or internal name:

getImageUrl("myLabelHere") --> https://instance/res/1414135351.css

thanks,

Dirk