WizardFactory / BlogSyncer

one write posting all of the world
Apache License 2.0
3 stars 10 forks source link

google blogger없이 로그인 하는 경우에 발생하는 오류. #337

Closed kimalec closed 8 years ago

kimalec commented 8 years ago

google 계정으로 blogger없이 로그인 하면 오류가 발생하는 듯함.

» 3 Aug 2015 14:59:15.914 2015-08-03 05:59:15.626239+00:00 app web.1 - - info: + cName=google, userId=55bf02ef9238a8110059bfba, url=/bot_bloglist?providerid=g103533502105922208304&userid=55bf02ef9238a8110059bfba
» 3 Aug 2015 14:59:15.932 2015-08-03 05:59:15.644005+00:00 app web.1 - - info: apiUrl=https://www.googleapis.com/blogger/v3/users/self/blogs cName=google, userId=55bf02ef9238a8110059bfba, url=/bot_bloglist?providerid=g103533502105922208304&userid=55bf02ef9238a8110059bfba
» 3 Aug 2015 14:59:16.204 2015-08-03 05:59:15.916972+00:00 app web.1 - - error: [TypeError: Cannot read property 'length' of undefined] cName=google, userId=55bf02ef9238a8110059bfba, url=/bot_bloglist?providerid=g103533502105922208304&userid=55bf02ef9238a8110059bfba Fatal
» 3 Aug 2015 14:59:16.280 2015-08-03 05:59:15.916978+00:00 app web.1 - - error: { kind: 'blogger#blogList' } cName=google, userId=55bf02ef9238a8110059bfba, url=/bot_bloglist?providerid=g103533502105922208304&userid=55bf02ef9238a8110059bfba Fatal
» 3 Aug 2015 14:59:16.280 2015-08-03 05:59:15.937631+00:00 app web.1 - - error: { statusCode: 500, Fatal
» 3 Aug 2015 14:59:16.280 2015-08-03 05:59:15.937635+00:00 app web.1 - - body: '"{}"',
» 3 Aug 2015 14:59:16.280 2015-08-03 05:59:15.937636+00:00 app web.1 - - url: 'http://www.justwapps.com/google/bot_bloglist?providerid=g103533502105922208304&userid=55bf02ef9238a8110059bfba' } cName=BlogBot, fName=_requestGetBlogList, userId=55bf02ef9238a8110059bfba
» 3 Aug 2015 14:59:16.280 2015-08-03 05:59:15.945524+00:00 app web.1 - - error: { statusCode: 500, Fatal
» 3 Aug 2015 14:59:16.280 2015-08-03 05:59:15.945530+00:00 app web.1 - - body: '"{}"',
» 3 Aug 2015 14:59:16.280 2015-08-03 05:59:15.945533+00:00 app web.1 - - url: 'http://www.justwapps.com/google/bot_bloglist?providerid=g103533502105922208304&userid=55bf02ef9238a8110059bfba' } cName=BlogBot, fName=findOrCreate, userId=55bf02ef9238a8110059bfba

accessToken의 기한이 완료되면, updateToken을 하는데 그때 "Fail to find provider"가 발생함.

» 3 Aug 2015 21:45:21.018 2015-08-03 12:45:20.893919+00:00 app web.1 - - error: [Error: Fail to find provider] cName=UserMgr, fName=findProviderByUserId, userId=55bf568e65e3751100d00567, providerName=google Fatal
» 3 Aug 2015 21:45:21.018 2015-08-03 12:45:20.897065+00:00 app web.1 - - warn: { statusCode: 500,
» 3 Aug 2015 21:45:21.024 2015-08-03 12:45:20.896744+00:00 heroku router - - at=info method=POST path="/google/bot_posts/updateToken?userid=55bf568e65e3751100d00567" host=www.justwapps.com request_id=efcdc105-990c-47fc-8286-9bf823444e93 fwd="54.158.191.59" dyno=web.1 connect=0ms service=6ms status=500 bytes=288
» 3 Aug 2015 21:45:21.075 2015-08-03 12:45:20.882611+00:00 app web.1 - - verbose: Fail to find group cName=groupSchema, fName=findGroupByBlogInfo, providerName=facebook, blogId=1390285387964896
» 3 Aug 2015 21:45:21.075 2015-08-03 12:45:20.893414+00:00 app web.1 - - error: Fail to find providers cName=userSchema, fName=findProvider, providerName=google, providerId=undefined Fatal
» 3 Aug 2015 21:45:21.075 2015-08-03 12:45:20.894127+00:00 app web.1 - - error: [Error: Fail to find provider] cName=google, userId=55bf568e65e3751100d00567, url=/bot_posts/updateToken?userid=55bf568e65e3751100d00567 Fatal
» 3 Aug 2015 21:45:21.093 2015-08-03 12:45:20.897068+00:00 app web.1 - - body: '"{}"',
» 3 Aug 2015 21:45:21.093 2015-08-03 12:45:20.897070+00:00 app web.1 - - url: 'http://www.justwapps.com/google/bot_posts/updateToken?userid=55bf568e65e3751100d00567' } cName=BlogBot, fName=_updateAccessToken, userId=55bf568e65e3751100d00567
» 3 Aug 2015 21:45:21.093 2015-08-03 12:45:20.897329+00:00 app web.1 - - warn: Fail to update access token

log url = https://logentries.com/app/8fb52d3a#/log/8b913433/?f=1438585920000&t=1438612320000&log_q=

neoqmin commented 8 years ago
해당 오류에 대한 분석 결과와 수정 내용입니다.
try {
    var items = body.items;
    log.debug("items length=" + items.length, meta);

구글의 blogger에서 블로그가 없을 경우 body.items 가 undefined 입니다. undefined.length에서 exception이 발생했습니다.

아래와 같이 수정할 예정입니다.

if(body.items !== undefined) {
    try {
        var items = body.items;
        log.debug("items length=" + items.length, meta);