2017-10-04 48 views
9

uzyskać to w konsoli:Imgur API udało się wczytać

Failed to load https://api.imgur.com/3/image: The 'Access-Control-Allow-Origin' header contains the invalid value ''. Origin 'https://example.org' is therefore not allowed access. 

i to jest mój kod:

  var formData = new FormData(); 
      formData.append('image', $('#imgur-api-upload')[0].files[0]); 
      formData.append('type', 'file'); 
      formData.append('name', $('#imgur-api-upload')[0].files[0].name.replace('.jpg', '')); 
      // request 
      $.ajax({ 
       async: true, 
       crossDomain: true, 
       url: 'https://api.imgur.com/3/image', 
       method: 'POST', 
       headers: { 
        'Authorization': 'Bearer ' + imgur_access_token 
       }, 
       processData: false, 
      contentType: false, 
      mimeType: 'multipart/form-data', 
      data: formData 
      }) 
      .done(function(dataResponse) { 
       console.log(dataResponse); 
       if (dataResponse.hasOwnProperty('status') && dataResponse.hasOwnProperty('success')) { 
        if (dataResponse['success'] == true && dataResponse['status'] == 200) { 
         $('#episode_image').val(dataResponse['data']['link']); 
        } else { 
         alert('Error: ' + dataResponse['data']['error']); 
        } 
       } 
      }) 

Próbowałem przesłać obrazy anonimowo, ale mam ten sam błąd. To są nagłówki odpowiedzi:

access-control-allow-credentials:true 
access-control-allow-headers:Authorization, Content-Type, Accept, X-Mashape-Authorization, IMGURPLATFORM, IMGURUIDJAFO, SESSIONCOUNT, IMGURMWBETA, IMGURMWBETAOPTIN 
access-control-allow-methods:GET, PUT, POST, DELETE, OPTIONS 
access-control-allow-origin: 
access-control-expose-headers:X-RateLimit-ClientLimit, X-RateLimit-ClientRemaining, X-RateLimit-UserLimit, X-RateLimit-UserRemaining, X-RateLimit-UserReset 
cache-control:no-store, no-cache, must-revalidate, post-check=0, pre-check=0 
content-encoding:gzip 
content-length:330 
content-type:application/json 
date:Wed, 04 Oct 2017 03:25:41 GMT 

Ale w karcie odpowiedzi widzę json, ale wydaje się, że nie może uzyskać dostępu do niego.

Próbowałem dodać zestaw nagłówka Access-Control-Allow-Origin * w .htaccess of wordpress, ale nie działał.

EDIT:
z "możliwe duplikat" odpowiedzi nie rozwiąże mój problem, już wypróbowane przykłady (przed opublikowaniem pytanie) w localhost/example.dev, live stronie internetowej, Chrome/Firefox/Krawędź, zmierzających na pc różna sieć, ale nadal uzyskują one pusty access-control-allow-origin.

EDIT2:
API Support Team: Ten problem został spowodowany przez błędną i powinien zostać rozwiązany.

+0

Możliwy duplikat nagłówka [Brak nagłówka "Access-Control-Allow-Origin" występuje w żądanym błędzie zasobu] (https://stackoverflow.com/questions/28547288/no-access-control-allow-origin- header-is-present-on-the-requested-resource-err) – FreedomPride

+0

Możliwy duplikat [problemów CORS z jQuery Dropzone i przesłaniem do Imgur] (https://stackoverflow.com/questions/25427627/cors-issues-with- jquery-dropzone-and-upload-to-imgur) –

+3

Mam ten sam problem. tylko pojawił się dzisiaj. Czy coś jest nie tak z API? – Programmer

Odpowiedz

0

API Zespołu Wsparcia: Ten problem został spowodowany przez błędną i powinien zostać rozwiązany.

+0

To nie jest naprawione. Nadal nie można zarejestrować aplikacji: https://api.imgur.com/oauth2/addclient ... która przekierowuje gdzie indziej. – Hayden

1

Mam ten problem od wczoraj. Problem wydaje się, że pusta wartość nagłówka Access-Control-Allow-Origin jest uważana za nieważną przez przeglądarkę. Może to regresja w API? Inspekcji wstępnej odpowiedzi poprawnie ma Access-Control-Allow-Origin: *