Queries Regarding APIGEE Streaming

Hi Team,

I have few more queries regarding streaming, Can you please help :

1) I tried using extract variable on the xml payload with streaming enabled. However, I am getting a IO Exception and the policy is not getting bypassed. Please let us know if this the expected behavior or am I missing something.
{"fault":{"detail":{"errorcode":"Internal Server Error"},"faultstring":"IOException"}}

2) Can we limit the max size to be allowed to streamed from apigee at the api proxy level.

Suppose for one particular api proxy, I want to limit the max size to 7MB. Can we do it by enabling some property.

3) Regarding the accept-range header, Is it mandatory for the api proxy client to send the accept-range header ? From the link shared, it seems its a good way to get payload in parts. Could you please let me know if any there is any other point.

Thanks,

Neetu

Solved Solved
2 1 430
1 ACCEPTED SOLUTION

Hello @Neetu Garg,

1. yes, thats the expected error - when streaming Apigee will not have access to the payload, and hence you cannot use any policies that would need access to the payload - in your case, XPath on the XML Payload

2. during streaming, the payload size and the payload is opaque to apigee, hence I don't think you can restrict the size

More details on Streaming in apigee here

3. Usually its the server would indicate if it supports range requests, your client need not send it. If the server supports it, ofcourse client can request for certain range of a response content.

View solution in original post

1 REPLY 1

Hello @Neetu Garg,

1. yes, thats the expected error - when streaming Apigee will not have access to the payload, and hence you cannot use any policies that would need access to the payload - in your case, XPath on the XML Payload

2. during streaming, the payload size and the payload is opaque to apigee, hence I don't think you can restrict the size

More details on Streaming in apigee here

3. Usually its the server would indicate if it supports range requests, your client need not send it. If the server supports it, ofcourse client can request for certain range of a response content.