2013-12-11 4 views
3

저는 3 시간 이상 imgur를 사용하여 64 데이터를 전혀 사용할 수 없게 만들었습니다. 데이터가 정확하다는 것을 확인했습니다. URL 이미지를 사용하여 imgur로 보낼 수 있음을 확인했습니다. 그냥 작동시킬 수 없습니다.imgur 이미지 업로드가 base64 데이터에서 작동하지 않습니까?

$(document).ready(function(){ 
      function readImage(input) { 
       var FR= new FileReader(); 
       FR.onload = function(e) { 
        console.log(e.target.result); 
        $.ajax({ 
           url: 'https://api.imgur.com/3/image', 
           type: 'post', 
           headers: { 
            Authorization: 'Client-ID 40dbfe0cfea73a7' 
           }, 
           data: { 
            image: e.target.result 
           }, 
           dataType: 'json', 
           success: function(json) { 
            console.log(json); 
           }, 
           error: function(json) { 
            console.log(json); 
           } 
          }); 
       };  
       FR.readAsDataURL(input); 
      } 
    }); 

입력 난 dropzone.js로부터 얻고 양식 입력되고, 64 기수 데이터의 예이다 :

데이터 : 화상 다음 I가 사용하고있는 코드는/PNG로,베이스 64, iVBORw0KGgoAAAANSUhEUgAAANgAAADYCAIAAAAGQrq6AAAABnRSTlMA/gABAP1bbA07AAAD + klEQVR4nO3dMW4sNxBAQa3h 19ZDhwzoNE0H +/+ dXpRJGo90HBg3O8PP7/SDT/11 + wbg50eIRAiRBCGSIEQShEiCEEn4e/WDZ + fzf97Hf7aag9buf3deu7r/V/7fldX9WxFJECIJQiRBiCQIkQQhkiBEEpZzxJVb + xd352Sv3Odpr3wOVkQShEiCEEkQIglCJEGIJAiRhO054srU/Gxq7nV67rh7/dp8sfZ9WRFJECIJQiRBiCQIkQQhkiBEEsbmiDWnn/+ dur73U/7LikiCEEkQIglCJEGIJAiRBCGS8LVzxF277yN8/E/WWBFJECIJQiRBiCQIkQQhkiBEEsbmiLW519Q5Jbee/z09X6x9X1ZEEoRIghBJECIJQiR BiCQIkYTtOWLtPX + n7c4dp35/yivflxWRBCGSIEQShEiCEEkQIglCJOFT25d2y + k5X + 1ckxorIglCJEGIJAiRBCGSIEQShEjCcj9ibb/d1PklU + csn36 + eGruOHX/p3uwIpIgRBKESIIQSRAiCUIkQYgkLOeItedta + 81rM3npty6HysiCUIkQYgkCJEEIZIgRBKESMLxc1ZunXdy + n523br + yul9mbvXtyKSIEQShEiCEEkQIglCJEGIJGy/H/H0PryVV/b53Zpfnn5 +/PT + VCsiCUIkQYgkCJEEIZIgRBKESMK1c1Zemaut1Oapr38 + VkQShEiCEEkQIglCJEGIJAiRhLHnmm + dR7JSm6tNOf1 + xF3ej8hXESIJQiRBiCQIkQQhkiBEErbPa145fT7y7t + dev9i7bzp3eu/에스/SikiCEEkQIglCJEGIJAiRBCGSMHZe89RzyqfnXiu3zkd + 5VzmXbvXsSKSIEQShEiCEEkQIglCJEGIJBzfj7j7 + 6 + 들 fL/Ktzx3vXt8ckScJkQQhkiBEEoRIghBJECIJY/sRp9x6jvi0W/v8VqaeN5/ab2pFJEGIJAiRBCGSIEQShEiCEEkY2494y + l9kLvzsFfOvz59nV1WRBKESIIQSRAiCUIkQYgkCJGE7fOaa3Oyldo50affg/JK/7tiRSRBiCQIkQQhkiBEEoRIghBJ2J4jrtTmYSunz48 RFA + + + Q88181WESIIQSRAiCUIkQYgkCJGEsTnitzp93vSt82ZOz1PtR RJQiRBiCQIkQQhkiBEEoRIwtfOEW 9529q3nb6OeiVqXmk +/+ Yg8SYgkCJEEIZIgRBKESIIQSRibI956b LKrXONp + Z/p89NmTL1OVsRSRAiCUIkQYgkCJEEIZIgRBK254i19wWuTJ13UnteePc6t85NsR + RJwmRBCGSIEQShEiCEEkQIgmf2j5C/kxWRBKESIIQSRAiCUIkQYgkCJGEfwDA94Tqvnz2uQAAAABJRU5 ErkJggg의 ==

내가 매개 변수를 떠나, 또는 유효하지 않은 값을 사용하고 있습니다 (A docs에 따라) 의미 400 오류를 받고 있어요. 또는 B) 이미지가 손상되었거나 잘못된 형식입니다. Base64 데이터를 브라우저로 복사하면 정상적으로 작동하므로 권한 부여가 제대로 작동하므로 나에게 의미가 없습니다. 이미지가 URL이면 업로드 할 수 있습니다. 그래서 나는 여기서 무슨 일이 일어나고 있는지 확신하지 못한다. 더 이상의 데이터가 필요하면 알려주고이 질문을 가능한 빨리 업데이트하겠습니다! 순전히 고마워요!

+1

교체 "데이터 : image/png; base64, "빈 문자열 있음, http://jsfiddle.net/jasdeepkhalsa/L5HmW/ 및 http://stackoverflow.com/questions/15709515/save-base64-encoded-image-with-ajax- request-in-php – Tobiasz

+1

와우, 나는 바보 같은 느낌, 정말 고마워! 이름 : 만약 당신이 그것을 넣어 대답을 동의합니다. :) – samuraiseoul

답변

6

당신은 교체해야 "데이터 : 이미지/PNG를, 64 기수를"빈 문자열로, 참조 (SO 코드없이 바이올린 링크를 허용하지 않기 때문에 여기 JSFiddle 요지 추가) jasdeepkhalsa/L5HmW/또는 Save base64-encoded image with AJAX request in PHP

+0

나는 이것을했다. 그리고 나는 imgur에서 단지 비어있는 이미지를 뒤로 얻는다!! 그 밖에 무엇이 될 수 있는지 아십니까? 내 아약스 호출은 다음과 같습니다 URL : 'https://api.imgur.com/3/image', \t \t 헤더 : { "인증": "클라이언트 ID [여기 클라이언트 ID]"}, \t \t 유형 : 'POST' \t \t 데이터 { '상'IMG '타입' '베이스 64', '제목'imgurTitle} \t \t 성공 : 함수 (결과) {} – bjorkland

+0

@Tobiasz 여전히 작동 할 수없는 나를 위해, 어떤 생각? – anunixercoder

+0

아직 아이디어가 없습니다. –

관련 문제