RestSharp 역 직렬화 문제

RestSharp를 사용하여 SendGrid의 통계 API의 응답에서 JSON을 역 직렬화하려고합니다.

요청이 성공적이고 Fiddler를 사용하여 응답이 실제로 반환되었음을 알 수 있습니다. 그러나 내가 시도 할 때

var response = client.Execute<CMSEmailTrackingStatistic>(request);

나는 null을 돌려 받는다. response.Data

다음은 요청을 발행하고 응답을받는 데 사용하는 코드입니다.

<!-- language: lang-cs -->
string trackingCategory = "E-News members 08-12-14";
string url = "/stats.get.json";
var client = new RestClient(ConfigurationManager.AppSettings["SendgridAPIUrl"]);
var request = new RestRequest(url, Method.POST);
request.AddParameter("category", trackingCategory, ParameterType.GetOrPost); // adds to POST or URL querystring based on Method
request.AddParameter("api_key", ConfigurationManager.AppSettings["SendGridPassword"], ParameterType.GetOrPost); // replaces matching token in request.Resource
request.AddParameter("api_user", ConfigurationManager.AppSettings["SendGridUserName"], ParameterType.GetOrPost);
request.AddParameter("aggregate", "1", ParameterType.GetOrPost);
var response = client.Execute<CMSEmailTrackingStatistic>(request);
return response.Data;

CMSEmailTrackingStatistic 클래스는 다음과 같습니다.

public class CMSEmailTrackingStatistic
{
    public int delivered { get; set; }
    public int unsubscribes { get; set; }
    public string name { get; set; }
    public int invalid_email { get; set; }
    public int bounces { get; set; }
    public int repeat_unsubscribes { get; set; }
    public int unique_clicks { get; set; }
    public int spam_drop { get; set; }
    public int repeat_bounces { get; set; }
    public int repeat_spamreports { get; set; }
    public int blocked { get; set; }
    public int requests { get; set; }
    public int spamreports { get; set; }
    public int clicks { get; set; }
    public int opens { get; set; }
    public int unique_opens { get; set; }
}

SendGrid에서 보낸 JSON은 다음과 같습니다.

HTTP/1.1 200 OK
Server: nginx/1.4.7
Date: Thu, 14 Aug 2014 17:05:30 GMT
Content-Type: text/html
Connection: keep-alive
Access-Control-Allow-Origin: https://sendgrid.com
Content-Length: 328

[{"delivered": 7153, "unsubscribes": 0, "name": "E-News nonmembers 08-12-14", "invalid_email": 30, "bounces": 13, "repeat_unsubscribes": 0, "unique_clicks": 86, "spam_drop": 0, "repeat_bounces": 412, "repeat_spamreports": 31, "blocked": 14, "requests": 7665, "spamreports": 0, "clicks": 153, "opens": 1384, "unique_opens": 967}]

예상 결과 목록을 만들려고했지만 작동하지 않았습니다.

나는 그들이 반환하는 Content-Type이 문제 일 수 있다고 믿기 때문에 SendGrid에 연락했습니다 (수동으로 Accept 헤더도 설정하려고했습니다).

유발 이츠 차 코프

RestSharp JSON이 유효하지 않기 때문에 역 직렬화 할 수 없습니다.

귀하의 JSON은 시작 [대신 {하는 내부 포장과 동일하게 끝입니다 ]대신}

대괄호를 제거하면 JSON을 올바르게 사용하여 역 직렬화 할 수 있습니다 Json.NET(테스트 목적으로 만 작동하지 않아야 할 이유가 없습니다 RestSharp).

{
  "delivered": 7153, "unsubscribes": 0, "name": "E-News nonmembers 08-12-14", 
  "invalid_email": 30, "bounces": 13, "repeat_unsubscribes": 0, "unique_clicks": 86, 
  "spam_drop": 0, "repeat_bounces": 412, "repeat_spamreports": 31, "blocked": 14, 
  "requests": 7665, "spamreports": 0, "clicks": 153, "opens": 1384, "unique_opens": 967 
}

역 직렬화 된 클래스

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

RestSharp 역 직렬화 문제

분류에서Dev

RestSharp로 JSON 역 직렬화

분류에서Dev

역 직렬화 문제

분류에서Dev

응답이 원시 문자열 인 경우 Restsharp 응답을 역 직렬화 할 수 없습니다.

분류에서Dev

C # XML 역 직렬화 문제

분류에서Dev

Spring JSON 역 직렬화 문자 제한

분류에서Dev

Django URL 역 직렬화 문제

분류에서Dev

ns1 : C # 역 직렬화 문제

분류에서Dev

튜플의 JSON 역 직렬화 문제?

분류에서Dev

XmlObjectSerializer 문서 역 직렬화

분류에서Dev

C # / JSON 개체 직렬화, 역 직렬화 및 대 / 소문자 문제 없음

분류에서Dev

XML 직렬화 / 역 직렬화 할 때 루트 제거

분류에서Dev

XML 직렬화 / 역 직렬화 할 때 루트 제거

분류에서Dev

일반 객체를 문자열로 직렬화 / 역 직렬화

분류에서Dev

RestSharp는 내 JSON 응답을 제대로 자동 역 직렬화 할 수 없지만 JSON.NET은 할 수 있습니다. 이유는 무엇입니까?

분류에서Dev

역 직렬화 전에 전처리 단계를 추가하여 RestSharp를 사용하여 XML에서 유효하지 않은 문자 처리

분류에서Dev

간단한 문자열 역 직렬화 문제

분류에서Dev

JSON 문자열 역 직렬화

분류에서Dev

JSON 역 직렬화 구문 분석 C #

분류에서Dev

JsonFx 특수 문자 역 직렬화

분류에서Dev

Google Financial JSON 문자열 역 직렬화

분류에서Dev

F #에서 json.net의 역 직렬화 문제

분류에서Dev

Newtonsoft JSON 문제로 목록 역 직렬화

분류에서Dev

Neo4J의 WHERE 문제, 역 직렬화 오류

분류에서Dev

vb.net json.net 역 직렬화 문제

분류에서Dev

RESTEasy : @POST 메서드의 @Form 역 직렬화 문제

분류에서Dev

Java, 객체 역 직렬화 시도시 예외, 포착 문제

분류에서Dev

하위 클래스 문제로 역 직렬화

분류에서Dev

제네릭 메서드 C #에서 문자열 역 직렬화

Related 관련 기사

  1. 1

    RestSharp 역 직렬화 문제

  2. 2

    RestSharp로 JSON 역 직렬화

  3. 3

    역 직렬화 문제

  4. 4

    응답이 원시 문자열 인 경우 Restsharp 응답을 역 직렬화 할 수 없습니다.

  5. 5

    C # XML 역 직렬화 문제

  6. 6

    Spring JSON 역 직렬화 문자 제한

  7. 7

    Django URL 역 직렬화 문제

  8. 8

    ns1 : C # 역 직렬화 문제

  9. 9

    튜플의 JSON 역 직렬화 문제?

  10. 10

    XmlObjectSerializer 문서 역 직렬화

  11. 11

    C # / JSON 개체 직렬화, 역 직렬화 및 대 / 소문자 문제 없음

  12. 12

    XML 직렬화 / 역 직렬화 할 때 루트 제거

  13. 13

    XML 직렬화 / 역 직렬화 할 때 루트 제거

  14. 14

    일반 객체를 문자열로 직렬화 / 역 직렬화

  15. 15

    RestSharp는 내 JSON 응답을 제대로 자동 역 직렬화 할 수 없지만 JSON.NET은 할 수 있습니다. 이유는 무엇입니까?

  16. 16

    역 직렬화 전에 전처리 단계를 추가하여 RestSharp를 사용하여 XML에서 유효하지 않은 문자 처리

  17. 17

    간단한 문자열 역 직렬화 문제

  18. 18

    JSON 문자열 역 직렬화

  19. 19

    JSON 역 직렬화 구문 분석 C #

  20. 20

    JsonFx 특수 문자 역 직렬화

  21. 21

    Google Financial JSON 문자열 역 직렬화

  22. 22

    F #에서 json.net의 역 직렬화 문제

  23. 23

    Newtonsoft JSON 문제로 목록 역 직렬화

  24. 24

    Neo4J의 WHERE 문제, 역 직렬화 오류

  25. 25

    vb.net json.net 역 직렬화 문제

  26. 26

    RESTEasy : @POST 메서드의 @Form 역 직렬화 문제

  27. 27

    Java, 객체 역 직렬화 시도시 예외, 포착 문제

  28. 28

    하위 클래스 문제로 역 직렬화

  29. 29

    제네릭 메서드 C #에서 문자열 역 직렬화

뜨겁다태그

보관