Question about displaying images in Perspective, sharing images through Ignition Web Server

Hello, I have questions about the images displayed in Ignition Perspective. I am using Python 3 to generate an image that I would like to place in Perspective. To do this, I place it in the Inductive Automation\Ignitionwebserver\webapps\main directory so that it can be referenced in the image source component.

When I share the image and refer to it by path everything works fine:

I'm trying to display it in designer perspective but you can't see the preview here:

It is also invisible on the frontend:

However, this happens when Perspective is run outside the gateway. On the server Perspective displays the image correctly:
image

I have also tried replacing the localhost address with the gateway IP address but I am also encountering a display problem. This happens on both the gateway and other computers connected to it. Source with gateway IP address doesn't seem to work, there is no preview both designer and in the fired up SCADA in the browser.

However, displaying the graphics in another window after right-clicking in the browser works fine everywhere:


Does anyone know how to solve this problem? What is the reason for the lack of image in Perspective on other clients?

Best regards,
Michal

Well, localhost is definitely never going to work anywhere outside the gateway machine, because localhost is always local, by definition. Get your IP address or hostname working, and use a designer that is not on the gateway. (Look for firewall issues--that is the most common reason the machine's external IP isn't reachable.)

Sure "localhost" won't work however also naming by IP and I think I found the cause but do you know maybe how to solve it?

10:25:15.039 [Browser Thread: 59744] WARN Perspective.Designer.Workspace - level: WARNING
message: "Mixed Content: The page at \'https://<IP>:8043/data/perspective/design\' was loaded over HTTPS, but requested an insecure element \'http://<IP>:8088/Files/image.jpg\'. This request was automatically upgraded to HTTPS, For more information see https://blog.chromium.org/2019/10/no-more-mixed-messages-about-https.html"
source: "https://<IP>:8043/data/perspective/design"

Is it possible to connect to webserver resources using https?

Did you try using https to get your image?

Unfortunately it fails, the webserver seems to be unable to respond to an encrypted connection:

I also tried to do it on another port and https://. It redirects me to connect unsecured.


I managed to solve it through browser settings i.e. changing - Allow unsecured content which however does not seem like a safe option but it works

You should have changed the port, too: http://localhost:8088/ ==> https://localhost:8043/

1 Like

And, depending on your company, you may have to use Certificates when using HTTPS.

Obligatory "even if you get this working, it's not supported" post.

That directory happens to work at this time, but it was never intended to be a long-term solution and we do not recommend you use it in this capacity. At this time the only officially supported routes for displaying images are:

  1. Externally hosted image repos (PhotoBucket, AmazonS3)
  2. Image Management
  3. WebDev resources
3 Likes

So the Ignition folder "main" is NOT supposed to hold images?

What do you mean by "WebDev Resources"?

No.

WebDev mounted folders or GET api endpoint scripts.

1 Like

So let's say I have 2k png's and would like to use them... I drop them in a network folder, mount the folder and somehow I should be able to reference them?

Edit:
I see a File Resource but it appears as if it's asking for a specific file

With the WebDev module, yes. If you don't want to pay for a WebDev license, you could put those files into a database and use my free Blob Server instead. But the "main" folder has real problems (cannot change or delete anything once served until a gateway restart) due to Jetty implementation details. Works by accident, and is utterly unsupportable.

1 Like

I would like to take a look at your Blob Server, please and thank you!

1 Like