Displaying External URL Images in AppSheet Suddenly Stopped

Hello, I am experiencing an issue with my AppSheet application. I have a column named ‘IMAGE’ where we use fixed images for some views. These images point to an external URL and everything was working perfectly. However, now the images are not displaying and nothing in the app or the images themselves has been modified.

It seems that AppSheet is transforming the external links and changing ‘&’ to ‘&amp’, which is causing the images to break. I noticed this when inspecting the image and it leads to a broken link. However, if I access the data from the SQL database field, the link works perfectly.

I am wondering how I can solve this issue. Is it no longer possible to use external links? This was very useful for me as it allowed me to keep certain images static without having to copy and create them in different folders where I store information for different clients.

Any help would be greatly appreciated. Thank you.

Solved Solved
0 13 856
1 ACCEPTED SOLUTION

The incident is resolved.

If you're serving images directly from drive.google.com, that won't work soon. Use a supported method instead. This is because Google Drive is removing support for third-party cookies, which breaks authentication when served from appsheet. They're doing that because Chrome is phasing out third-party cookies.

All I know is in the incident, I don't know how long you have to migrate.

View solution in original post

13 REPLIES 13

Hello,

We're looking into this issue. It seems that it is no longer possible to use the `drive.google.com/uc` endpoint to directly serve images from Drive. This appears to be related to a change in Drive's policy, as well as the general push to get rid of third party cookies: https://workspaceupdates.googleblog.com/2023/10/upcoming-changes-to-third-party-cookies-in-google-dr...

The workaround they specify of using an iframe will not work in appsheet. We are investigating whether there is more we can do, but for the moment copying is the best workaround.

Hello again,

We have up-to-date information available on the Google cloud status dashboard for this incident:

https://status.cloud.google.com/incidents/i5we7WjHzCpiXZty3hAr

To quote the most relevant text as of this writing:

Description: Mitigation work is currently underway by our engineering team.
The mitigation is expected to complete by Thursday, 2024-01-11 18:30 US/Pacific.

I didn't notice this problem on my app.  The external images I have put in image columns are working.  Does that me that the issue has been resolved or are only some people affected?

The incident is resolved.

If you're serving images directly from drive.google.com, that won't work soon. Use a supported method instead. This is because Google Drive is removing support for third-party cookies, which breaks authentication when served from appsheet. They're doing that because Chrome is phasing out third-party cookies.

All I know is in the incident, I don't know how long you have to migrate.

Thanks!  Sorry to hear about the end of third-party cookies.  😞
By the way, the link you shared is broken.  I think it should be https://workspaceupdates.googleblog.com/2023/10/upcoming-changes-to-third-party-cookies-in-google-dr...

Thank you, I am not good with computers

Thanks!  I'm using the following url to display an image (which has been shared so that anyone with the URL can view it) in html (in a Long text column with HTML rich text enabled):

https://drive.google.com/uc?id=14fpsJkz8jBz6Je_uHcxonnqsCK3RBCK4


I assume that this is NOT using third-party cookies (it works in browsers where third-party cookies are not allowed) and so will be "safe" for the time being.  Is that right?

That image will break when our grace period is up, I just tested it. I'm not up-to-date on why Drive still breaks if you set it to public access, or the differences between Chrome's approach and other browsers.

Thanks for your reply.  By the way, did you test it inside an image column?  I'm interested in using images like this inside Long text columns with HTML, as I have proposed here:

https://www.googlecloudcommunity.com/gc/Tips-Tricks/No-server-for-media-no-problem/m-p/695452#M9229

I wonder if there might not be a difference between images we can access in AppSheet's image columns and in other contexts.  Is it the case that sharing itself will be disabled?  I'm a bit confused about the extent of the change that will come.

Thanks for your help with this, @infinitejess .  I've been looking into the issue and I think I now understand what you have been telling me more clearly.  I wrote the following "tip" to organize what I have learned in the hope that it might be useful to others.  I'd appreciate it if you could take a look at it to see if what I have written is correct:
Preparing for third-party cookie phase out
https://www.googlecloudcommunity.com/gc/Tips-Tricks/Preparing-for-third-party-cookie-phase-out/m-p/6...

Hello,
I appreciate your quick reply. It seems that the issue has been resolved. Thanks!

What do you do in the case of a "Show" column with an "Image" type? With an "Image" column you have a field for "Image/File folder path" where you can insert the file name. For a "Show" column with an "Image" type the image information needs to go into the "Content" field. From my testing, it seems that you can't reference image file names in the "Content" field, only a URL seems to work.

Similar problem when you have an "Image" column and want to have a default image that can be replaced by the user. In this case, I have been using the "Initial value" field and using a script that uses a default image if the cell is blank (i.e. nothing provided from the user in the form) or the user provided image if they did provide one. This scenario also only seems to work with a URL, not with file names.

Top Labels in this Space