Skip to content

Commit de0b5aa

Browse files
Excludes processing OPTIONS responses. Closes #371
1 parent 79e87e8 commit de0b5aa

File tree

1 file changed

+4
-2
lines changed

1 file changed

+4
-2
lines changed

m365-developer-proxy/ProxyEngine.cs

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -384,8 +384,9 @@ private async Task HandleRequest(SessionEventArgs e) {
384384

385385
// Modify response
386386
async Task OnBeforeResponse(object sender, SessionEventArgs e) {
387+
var method = e.HttpClient.Request.Method.ToUpper();
387388
// read response headers
388-
if (IsProxiedHost(e.HttpClient.Request.RequestUri.Host)) {
389+
if (method is not "OPTIONS" && IsProxiedHost(e.HttpClient.Request.RequestUri.Host)) {
389390
// necessary to make the response body available to plugins
390391
e.HttpClient.Response.KeepBody = true;
391392
await e.GetResponseBody();
@@ -394,8 +395,9 @@ async Task OnBeforeResponse(object sender, SessionEventArgs e) {
394395
}
395396
}
396397
async Task OnAfterResponse(object sender, SessionEventArgs e) {
398+
var method = e.HttpClient.Request.Method.ToUpper();
397399
// read response headers
398-
if (IsProxiedHost(e.HttpClient.Request.RequestUri.Host)) {
400+
if (method is not "OPTIONS" && IsProxiedHost(e.HttpClient.Request.RequestUri.Host)) {
399401
_logger.LogRequest(new[] { $"{e.HttpClient.Request.Method} {e.HttpClient.Request.Url}" }, MessageType.InterceptedResponse, new LoggingContext(e));
400402
_pluginEvents.RaiseProxyAfterResponse(new ProxyResponseArgs(e, _throttledRequests, new ResponseState()));
401403
}

0 commit comments

Comments
 (0)