ไม่สามารถดำเนินการให้เสร็จสิ้นได้ (ข้อผิดพลาด com.facebook.sdk 5.)

ฉันมีปัญหาเมื่อสร้างแอปใหม่ใน Facebook และใช้เพื่อแชร์ใน Titanium ด้วยโมดูล Facebook ฉันได้รับข้อผิดพลาดนี้:

Error: HTTP status code: 403
[ERROR] :  FB: The operation couldn’t be completed. (com.facebook.sdk error 5.)

ดังนั้นหากฉันใช้ appid เก่า (อื่น ๆ ) ด้วยรหัสเดียวกันและและการกำหนดค่าเดียวกันในส่วนแอพ Facebook มันก็ทำงานได้ดี

var fb = require('facebook');
fb.appid = "XXXXXXXXXXXXXXX";
fb.permissions = ['publish_stream', 'read_stream'];

if(!fb.loggedIn) {
    fb.authorize();
} 

var data = {
    message: messageToShare,
    picture: blobImageToShare
};

fb.requestWithGraphPath('me/photos', data, "POST", function(e){
    if (e.success) {
        Ti.API.info("FB: Success! Shared to FB: " + e.result);
    } 
    else {
        if (e.error) {
           Ti.API.error('FB: '+ e.error);
        } 
        else {
            Ti.API.error("FB: Unkown result sharing");
        }
    }
});

เวอร์ชัน Titanium : 3.3.0 Titanium SDK 3.3.0 แพลตฟอร์ม & เวอร์ชัน : iOS >=6 อุปกรณ์: iOS Simulator, iPhone 4 & 5. มีวิธีแก้ไขปัญหานี้หรือไม่?


person El Farouk Mokrani    schedule 22.09.2014    source แหล่งที่มา


คำตอบ (1)


คุณต้องตรวจสอบให้แน่ใจว่าการอนุญาตของ Facebook เสร็จสมบูรณ์ก่อนที่จะพยายามทำการสืบค้นแบบกราฟ

fb.authorize();

fb.addEventListener('login', function(e) {
    Ti.API.debug('Returned from Facebook.');

    if (e.success) {
        Ti.API.debug('Authorized with Facebook, yeeey!');
        // Query Graph now that we're authorized...
    }
    else if (e.error) {
        Ti.API.debug('Error logging in with Facebook: ' + e.error);
    }
    else if (e.cancelled) {
        Ti.API.debug('Cancelled logging in with Facebook.');
    }
    else {
        Ti.API.debug('Something else. May actually be logged out.');
    }
});

นอกจากนี้ ตรวจสอบให้แน่ใจว่าคุณกำหนด Facebook Appid ของคุณในไฟล์ tiapp.xml ของคุณ:

<property name="ti.facebook.appid">xxxxxxxxxxxx</property>
person Kip    schedule 24.09.2014
comment
ขอบคุณ kip สำหรับการตอบกลับ แต่รหัสของฉันใช้งานได้ดีกับ appi เก่าไม่ใช่สำหรับ appid ใหม่ และฉันแน่ใจว่าเป็นแบบสอบถามแบบกราฟหลังจากการอนุญาตของ Facebook - person El Farouk Mokrani; 24.09.2014