Local preview does not trust certificate signed by GeoTrust/RapidSSL

Certificate from GeoTrust/RapidSSL is not trusted when using Fetch API in local preview. iOS preview works (android not tested).

  • Fuse version 0.33.1 (build 10445)
  • MacOS 10.12.3
  • See minimum example below:

Create an empty app with fuse create app fetchTest

MainView.ux

<App>
  <JavaScript>
    const Observable = require('FuseJS/Observable');
    const result = Observable();
    fetch('https://data.smartbydata.no')
        .then(response => result.value = response.status)
        .catch(error => result.value = error.message)
    module.exports = {result};
  </JavaScript>
  <Text Value="{result}" Alignment="Center"/>
</App>

Start a local preview: fuse preview .

Expected result: 200

Actual result: Network request failed

Unfortunately, that error message is not very helpful, but if you connect a debugger and step into the functions you will find this error message at some point: “Error: SecureChannelFailure (The authentication or decryption has failed.)”

Now run the same app on a device: fuse preview -t iOS .

Expected result: 200

Actual result: 200

Seems like the root certificate from CA GeoTrust / RapidSSL is not trusted when using local preview.

We are using Mono for running Fuse Preview on OSX and the story of using SSL/TLS is a bit of a sad chapter. Could you try to run mono certmgr.exe ... and add it that way?

This is from the mono website:

Use the certmgr.exe tool (included in Mono) to add the root certificates into the Mono Trust store. Every SSL certificate signed from this root will then be accepted (i.e. no exception will be thrown) for SSL usage (for all Mono applications running for the user or the computer - depending on the certificate store where the certificate was installed).

Hi Fuse!
Has there been any updates on this issue?

I imagine it’s pretty common to resolve assets from https domains :slight_smile:

I installed mono certmgr on my Mac, and managed to put certificates into my Trust store. However it seems to have to effect on the Preview application. I see that Fuse itself also has a version of Mono, but where would I put my certificates in this case?

Thanks!

I am using Fusetools 1.80.