title: Error with IPFS COR
body: <p>When trying to use IPFS from my localhost I am having trouble accessing the IPFS service. I tried setting my config to accept the localhost and all server stuff, but nothing seems to work. </p>
  
  <p>The error:</p>
  
  <p>Failed to load <a href="http://127.0.0.1:5001/api/v0/files/stat?arg=0x6db883c6f3b2824d26f3b2e9c30256b490d125b10a3942f49a1ac715dd2def89&amp;stream-channels=true" rel="nofollow noreferrer">http://127.0.0.1:5001/api/v0/files/stat?arg=0x6db883c6f3b2824d26f3b2e9c30256b490d125b10a3942f49a1ac715dd2def89&amp;stream-channels=true</a>: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin '<a href="http://localhost:63342" rel="nofollow noreferrer">http://localhost:63342</a>' is therefore not allowed access. The response had HTTP status code 403. If an opaque response serves your needs, set the request's mode to 'no-cors' to fetch the resource with CORS disabled.</p>
  
  <p>IPFS Config:</p>
  
  <pre><code>{
    "API": {
      "HTTPHeaders": {
        "Access-Control-Allow-Origin": [
          "*"
        ]
      }
    },
    "Addresses": {
      "API": "/ip4/127.0.0.1/tcp/5001",
      "Announce": [],
      "Gateway": "/ip4/127.0.0.1/tcp/8080",
      "NoAnnounce": [],
      "Swarm": [
        "/ip4/0.0.0.0/tcp/4001",
        "/ip6/::/tcp/4001"
      ]
    },
    "Bootstrap": [
      "/dnsaddr/bootstrap.libp2p.io/ipfs/QmNnooDu7bfjPFoTZYxMNLWUQJyrVwtbZg5gBMjTezGAJN",
      "/dnsaddr/bootstrap.libp2p.io/ipfs/QmQCU2EcMqAqQPR2i9bChDtGNJchTbq5TbXJJ16u19uLTa",
      "/dnsaddr/bootstrap.libp2p.io/ipfs/QmbLHAnMoJPWSCR5Zhtx6BHJX9KiKNN6tpvbUcqanj75Nb",
      "/dnsaddr/bootstrap.libp2p.io/ipfs/QmcZf59bWwK5XFi76CZX8cbJ4BhTzzA3gU1ZjYZcYW3dwt",
      "/ip4/104.131.131.82/tcp/4001/ipfs/QmaCpDMGvV2BGHeYERUEnRQAwe3N8SzbUtfsmvsqQLuvuJ",
      "/ip4/104.236.179.241/tcp/4001/ipfs/QmSoLPppuBtQSGwKDZT2M73ULpjvfd3aZ6ha4oFGL1KrGM",
      "/ip4/128.199.219.111/tcp/4001/ipfs/QmSoLSafTMBsPKadTEgaXctDQVcqN88CNLHXMkTNwMKPnu",
      "/ip4/104.236.76.40/tcp/4001/ipfs/QmSoLV4Bbm51jM9C4gDYZQ9Cy3U6aXMJDAbzgu2fzaDs64",
      "/ip4/178.62.158.247/tcp/4001/ipfs/QmSoLer265NRgSp2LA3dPaeykiS1J6DifTC88f5uVQKNAd",
      "/ip6/2604:a880:1:20::203:d001/tcp/4001/ipfs/QmSoLPppuBtQSGwKDZT2M73ULpjvfd3aZ6ha4oFGL1KrGM",
      "/ip6/2400:6180:0:d0::151:6001/tcp/4001/ipfs/QmSoLSafTMBsPKadTEgaXctDQVcqN88CNLHXMkTNwMKPnu",
      "/ip6/2604:a880:800:10::4a:5001/tcp/4001/ipfs/QmSoLV4Bbm51jM9C4gDYZQ9Cy3U6aXMJDAbzgu2fzaDs64",
      "/ip6/2a03:b0c0:0:1010::23:1001/tcp/4001/ipfs/QmSoLer265NRgSp2LA3dPaeykiS1J6DifTC88f5uVQKNAd"
    ],
    "Datastore": {
      "BloomFilterSize": 0,
      "GCPeriod": "1h",
      "HashOnRead": false,
      "Spec": {
        "mounts": [
          {
            "child": {
              "path": "blocks",
              "shardFunc": "/repo/flatfs/shard/v1/next-to-last/2",
              "sync": true,
              "type": "flatfs"
            },
            "mountpoint": "/blocks",
            "prefix": "flatfs.datastore",
            "type": "measure"
          },
          {
            "child": {
              "compression": "none",
              "path": "datastore",
              "type": "levelds"
            },
            "mountpoint": "/",
            "prefix": "leveldb.datastore",
            "type": "measure"
          }
        ],
        "type": "mount"
      },
      "StorageGCWatermark": 90,
      "StorageMax": "10GB"
    },
    "Discovery": {
      "MDNS": {
        "Enabled": true,
        "Interval": 10
      }
    },
    "Experimental": {
      "FilestoreEnabled": false,
      "Libp2pStreamMounting": false,
      "ShardingEnabled": false
    },
    "Gateway": {
      "HTTPHeaders": {
        "Access-Control-Allow-Headers": [
          "X-Requested-With",
          "Range"
        ],
        "Access-Control-Allow-Methods": [
          "GET"
        ],
        "Access-Control-Allow-Origin": [
          "localhost:63342"
        ]
      },
      "PathPrefixes": [],
      "RootRedirect": "",
      "Writable": false
    },
    "Identity": {
      "PeerID": "QmRgQdig4Z4QNEqs5kp45bmq6gTtWi2qpN2WFBX7hFsenm"
    },
    "Ipns": {
      "RecordLifetime": "",
      "RepublishPeriod": "",
      "ResolveCacheSize": 128
    },
    "Mounts": {
      "FuseAllowOther": false,
      "IPFS": "/ipfs",
      "IPNS": "/ipns"
    },
    "Reprovider": {
      "Interval": "12h",
      "Strategy": "all"
    },
    "Swarm": {
      "AddrFilters": null,
      "ConnMgr": {
        "GracePeriod": "20s",
        "HighWater": 900,
        "LowWater": 600,
        "Type": "basic"
      },
      "DisableBandwidthMetrics": false,
      "DisableNatPortMap": false,
      "DisableRelay": false,
      "EnableRelayHop": false
    }
  }
  </code></pre>