2009-07-02 5 views
0

나는 웹 사이트와 약간의 페이스 북 통합을 시도하고 있으며 페이스 북 API에는 사용자 계정으로 사진을 게시하는 전화가 있습니다. 매개 변수 중 하나는 미가공 이미지 데이터입니다. 이미지는 웹 서버에 로컬로 저장되며 URL이 있습니다. 내가 할 수 없을 때까지 자바 스크립트를 사용하여 클라이언트에 이미지를로드하려고했습니다. 현재 이미지 URL을 사용하여 서버에 httpxml 호출을 시도하고 이미지 데이터를 반환하려고합니다. 이 예제 코드는 csv 파일에 대한 URL과 함께 작동하지만 이미지 파일 내용을 읽지는 않습니다. xmlhttp.responseText를 시도 할 때 오류가 발생합니다. 나는이 이미지 데이터를 사용하려면 API 호출은 다음과 같습니다AJAX를 사용하여 원본 이미지 데이터로드하기

http://wiki.developers.facebook.com/index.php/Photos.upload

function getFile(pURL,pFunc) { 
     xmlhttp=new ActiveXObject('Microsoft.XMLHTTP'); 
     if (xmlhttp) { 
      eval('xmlhttp.onreadystatechange='+pFunc+';'); 
      xmlhttp.open('GET', pURL, false); 
      xmlhttp.send(); 
     } 
} 

function makeList() { 
    if (xmlhttp.readyState==4) { 
     if (xmlhttp.status==200) { 
      var tmpArr=xmlhttp.responseText; 
      document.getElementById('theExample').innerHTML=tmpArr; 
     } 
    } 
} 

이 웨비 물건을 내 끔찍한 이해를 용서하십시오. 나는 그것을 배울 필요가있다. 그러나 나는 앉아서이 모든 좋은 것을 배우기 전에이 일을 빨리해야한다. 나는 C#/C++ 세계에 너무 오랫동안 정착 해 왔습니다.

+0

죄송합니다.이 질문에 다소 미안합니다. 1. 왜 이미지의 내용을 가져올 수 없습니까 (표시하지 않고 페이 스북 API로 전달). 2.이 API 호출을 수행하기 위해 올바른 방향으로 가고 있습니까? 제안 된 내용을 시험해보고 어디에서나 얻을 수 있는지 확인합니다. –

답변

1

그래서 페이스 북 앱을 작성하고, 페이스 북 API를 사용하며, 애플리케이션의 이미지를 사용자 프로필에 업로드하려고합니까?

api에는 muti- part MIME과 함께 HTTP 게시물이 필요합니다.

클라이언트 라이브러리를 사용하고 있습니까? 그렇다면 당신이 사용하는 가정 : 나는 당신의 코드에서 볼 http://www.ajaxlines.com/ajax/stuff/article/using_the_facebook_api_to_upload_photos.php

한 가지 문제는 (에서 responseText로 URL에서 이미지를 끌어하려고하는 것입니다 : http://facebook.codeplex.com/

이 PHP 레퍼런스는 당신이 필요로하는 근거가 문자열) 대신 responseBody (바이너리)를 사용해야합니다. http://msdn.microsoft.com/en-us/library/ms535874(VS.85).aspx

+0

responseBody는 표준 속성이 아닙니다. 파이어 폭스의 경우에는 다른 트릭을 사용해야하고 IE6의 경우 운이 좋지 않을 것입니다. https://developer.mozilla.org/En/Using_XMLHttpRequest 클라이언트 측 차이점을 해결하기보다는 서버가 양식 게시를 제출하는 백엔드 HTTP 요청을하는 것이 좋습니다. – EricLaw

1

서버의 이미지 URL을 알고 있다면 왜 이미지 요소를 만들지 않을까요?

var img = document.createElement("img"); 
img.src = url; // assuming you have the URL in a variable called "url" 
document.getElementById("image_holder").appendChild(img); 
관련 문제