Question

Why can I use "http://localhost:PORT" with CORS in Spaces?

Safari doesn’t respect my wildcard rule in CORS but Firefox and Chrome do. None of the suggestions in this StackOverflow post helped either: https://stackoverflow.com/questions/16824661/cors-request-not-working-in-safari/39875236.

I feel like this could be remedied if Spaces was configured to allow a URL without a TLD.

Subscribe
Share

I was trying to enter CORS for localhost on a Space, and it appears the UI is still not handling (you have to upload an XML file still). Does this plan on ever getting fixed?

This comment has been deleted


Submit an answer
You can type!ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!

These answers are provided by our Community. If you find them useful, show some love by clicking the heart. If you run into issues leave a comment, or add your own answer to help others.

Accepted Answer

Thanks for flagging this issue for us. It looks like the input validation in our control panel is a bit too strict here. As a work-around until this experience is improved, you can create CORs configurations for Spaces using the API for origins without a TLD. For example, using s3cmd you can run:

  1. s3cmd setcors cors.xml s3://example-space

Where the contents of the cors.xml file contains your CORs configurations in XML format. For example:

<CORSConfiguration>
 <CORSRule>
   <AllowedOrigin>http://localhost:3000</AllowedOrigin>

   <AllowedMethod>PUT</AllowedMethod>
   <AllowedMethod>POST</AllowedMethod>
   <AllowedMethod>DELETE</AllowedMethod>

   <AllowedHeader>*</AllowedHeader>
 </CORSRule>
</CORSConfiguration>

So the year has gone by and it still isn’t possible to set http://127.0.0.1:12345 as a cors via the control panel

So the year has gone by and it still isn’t possible to set http://127.0.0.1:12345 as a cors via the control panel

So the year has gone by and it still isn’t possible to set http://127.0.0.1:12345 as a cors via the control panel

So the year has gone by and it still isn’t possible to set http://127.0.0.1:12345 as a cors via the control panel

So the year has gone by and it still isn’t possible to set http://127.0.0.1:12345 as a cors via the control panel

CORS options are now available thru DigitalOcean Dashboard. If you are facing this problem:

  1. Go to https://cloud.digitalocean.com/spaces
  2. Select your Space
  3. Go to Settings tab
  4. On “CORS Configurations”, click on the “+” (Plus) button

Create a new configuration with this values:

  • Origin: *
  • Allowed Methods: GET
  • Allowed Headers: Click “Add header” an them: *
  • Save options

Should work.

CORS options are now available thru DigitalOcean Dashboard. If you are facing this problem:

  1. Go to https://cloud.digitalocean.com/spaces
  2. Select your Space
  3. Go to Settings tab
  4. On “CORS Configurations”, click on the “+” (Plus) button

Create a new configuration with this values:

  • Origin: *
  • Allowed Methods: GET
  • Allowed Headers: Click “Add header” an them: *
  • Save options

Should work.

For a step by step of how to complete this using s3cmd please see https://stackoverflow.com/a/65523591/8419289

With me Localhost works only after set a certified on php.ini.

https://curl.haxx.se/ca/cacert.pem

curl.cainfo = “path_to_cert\cacert.pem”

I hope help you guys!

There are no pre-built s3cmd binaries for Windows.

So the depth of things we need to do to set CORS for Spaces for local development:

  • Cant set CORS because of rules too strict, must use s3cmd:
  • Must get s3cmd. Cannot get s3cmd because no windows binaries.
  • Must build s3cmd from source. Cannot build s3cmd from source because it requires Python 2.x.
  • Must download Python 2.x in system. Must vet python for development. If your stack does not include Python. Must learn python.

=|