2017-03-06 18 views
14

Tôi đang cố gắng sử dụng phản ứng-native-fbsdk trong ứng dụng gốc phản ứng của tôi. Nó đã làm việc tốt cho đến ngày hôm qua. Nhưng, ngày nay nó đưa ra một lỗi lạ nói rằng RCTJSONStringify() gặp phải lỗi sau: Loại không hợp lệ trong JSON write (NSURL).lỗi gốc phản ứng RCTJSONStringify() gặp phải lỗi sau: Loại không hợp lệ trong JSON write (NSURL)

RN v0.42.0

Đây là mã của tôi:

_fbAuth(error, result) { 
    if (error) { 
     console.log("error"); 
     alert("login has error: " + result.error); 
    } else if (result.isCancelled) { 
     console.log("login cancelled"); 
     alert("login is cancelled."); 
    } else { 
     AccessToken.getCurrentAccessToken().then((data) => { 
     console.log("login success"); 
     console.log(data.accessToken.toString()); 
     let accessToken = data.accessToken; 
     alert(data.accessToken.toString()); 
     const responseInfoCallback = (error, result) => { 
      if (error) { 
      console.log(error); 
      } else { 
      console.log(result); 
      } 
     } 

     const infoRequest = new GraphRequest(
      '/me', 
      { 
      accessToken: accessToken, 
      parameters: { 
       fields: { 
       string: 'email,name,first_name,middle_name,last_name' 
       } 
      } 
      }, 
      responseInfoCallback 
     ); 

     // Start the graph request. 
     new GraphRequestManager().addRequest(infoRequest).start(); 
     }); 
    } 
    } 

    render() { 
    console.log("in new render"); 
    return (
     <View style={styles.container}> 
     <LoginButton 
     publishPermissions={["publish_actions"]} 
     onLoginFinished={this._fbAuth} 
     onLogoutFinished={() => alert("logout.")}/> 
     </View> 
    ); 
    } 

Các thông tin lỗi in debugger:

Error message

tôi nhận được lỗi trên trong khi gọi graphAPI trong hàm responseInfoCallbac k. Bất kỳ ý tưởng gì đang xảy ra?

Cập nhật 1:

Lỗi này chỉ xảy ra khi gỡ lỗi từ xa được bật !! Khác nó không xảy ra. Nhưng không có trình gỡ rối từ xa, tôi không thể tiếp tục phát triển ứng dụng. Có phương pháp nào khác để xem báo cáo nhật ký của ứng dụng gốc phản ứng ngoài trình gỡ lỗi từ xa không?

Cập nhật 2:

Các RCTJSONStringify() lỗi chỉ xảy ra đằng sau proxy. Ngoài ra, các cuộc gọi tìm nạp https cũng không hoạt động theo proxy. Tôi đã thử nghiệm trong một mạng mở, nó hoạt động tốt. Tôi đoán, đó là thêm một số thông tin proxy vào ứng dụng RN. Tôi nghĩ rằng nó liên quan đến APP transport security

Trả lời

1

Nếu bạn tắt trình gỡ rối, bạn có thể thấy lỗi thích hợp trong bảng điều khiển XCode. Truy cập nó từ menu Xcode Xem/Gỡ lỗi Khu vực/Kích hoạt bảng điều khiển, nếu nó không được kích hoạt tự động.

+0

nó hoạt động !! Nhưng điều này là mệt mỏi. mỗi khi bạn nhấp vào nút chạy và phải mất một vài phút để hoàn thành ứng dụng. Tôi đoán lỗi là do các vấn đề proxy, coz tôi không thể thực hiện bất kỳ cuộc gọi mạng quá. –

+0

Và trên hết, tôi sử dụng redux-logger, trông có vẻ khó hiểu trong giao diện điều khiển xcode. Kinda bực bội để làm việc trong giao diện điều khiển Xcode thay vì RN trình gỡ lỗi. –

Các vấn đề liên quan