From: syo68k Date: Tue, 26 Apr 2011 12:31:44 +0000 (+0900) Subject: JSON解析時のエラー処理追加 X-Git-Tag: Tween_v1.0.1.0~2 X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=ec428c6fef30a98c072a65b92f374d99fc7cf323;p=opentween%2Fopen-tween.git JSON解析時のエラー処理追加 --- diff --git a/Tween/Google.vb b/Tween/Google.vb index 09299343..62eeca53 100644 --- a/Tween/Google.vb +++ b/Tween/Google.vb @@ -196,7 +196,14 @@ Public Class Google Dim content As String = "" If http.GetData(apiurl, headers, content) Then Dim serializer As New DataContractJsonSerializer(GetType(TranslateResponse)) - Dim res As TranslateResponse = CreateDataFromJson(Of TranslateResponse)(content) + Dim res As TranslateResponse + + Try + res = CreateDataFromJson(Of TranslateResponse)(content) + Catch ex As Exception + ErrMsg = "Err:Invalid JSON" + Return False + End Try If res.ResponseData Is Nothing Then ErrMsg = "Err:" + res.ResponseDetails @@ -221,8 +228,12 @@ Public Class Google Dim content As String = "" If http.GetData(apiurl, headers, content) Then Dim serializer As New DataContractJsonSerializer(GetType(LanguageDetectResponse)) - Dim res As LanguageDetectResponse = CreateDataFromJson(Of LanguageDetectResponse)(content) - Return res.ResponseData.Language + Try + Dim res As LanguageDetectResponse = CreateDataFromJson(Of LanguageDetectResponse)(content) + Return res.ResponseData.Language + Catch ex As Exception + Return "" + End Try End If Return "" End Function diff --git a/Tween/Thumbnail.vb b/Tween/Thumbnail.vb index 3b7a1557..db1805ba 100644 --- a/Tween/Thumbnail.vb +++ b/Tween/Thumbnail.vb @@ -2259,7 +2259,13 @@ Public Class Thumbnail If (New HttpVarious).GetData(apiurl, Nothing, src, 0, args.errmsg, GetUserAgentString()) Then Dim sb As New StringBuilder Dim serializer As New DataContractJsonSerializer(GetType(PicPlzDataModel.ResultData)) - Dim res As PicPlzDataModel.ResultData = CreateDataFromJson(Of PicPlzDataModel.ResultData)(src) + Dim res As PicPlzDataModel.ResultData + + Try + res = CreateDataFromJson(Of PicPlzDataModel.ResultData)(src) + Catch ex As Exception + Return False + End Try If res.Result = "ok" Then Try