0

Graph seems to be returning invalid retry-after header values. Fiddler traces show I'm receiving 429 Too Many Requests error codes from batched requests sent to the v1.0/$batch endpoint, but the Retry-After header I'm receiving are all decimals (0.249, 0.124 etc). HTTP spec says positive integers or timestamps are valid, but I'm receiving a decimal. Not sure how to handle it! I get an exception when calling

new HttpResponseMessage().Headers.Add("Retry-After","0.256");

but absolutely fine when I call

new HttpResponseMessage().Headers.Add("Retry-After","120");

as an example of a valid Retry-After header.

Dave Rant
  • 9
  • 3
  • I'm not sure I follow. The `Retry-After` header isn't something you should be sending to Graph, it is something Graph returns to you. The value is the number of seconds to wait. In this case `.256` seconds (or `256` milliseconds). – Marc LaFleur Feb 07 '19 at 03:41
  • I'm flattening nested batch responses back out into HttpResponseMessages to parse http response headers, hide away the implementation a bit from calling code, etc. It's when I'm parsing out the response headers from the batched json that I'm getting errors. .256 is an invalid retry-after header value according to the http spec (https://tools.ietf.org/html/rfc7231#section-7.1.3) so Darrel Miller in the graph team has picked it up and forwarded to the appropriate devdiv team. – Dave Rant Apr 08 '19 at 14:33

0 Answers0