Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Net / System / Net / _CookieModule.cs / 1305376 / _CookieModule.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Net { internal static class CookieModule { // fields // constructors // properties // methods internal static void OnSendingHeaders(HttpWebRequest httpWebRequest) { GlobalLog.Print("CookieModule::OnSendingHeaders()"); try { if (httpWebRequest.CookieContainer == null) { return; } // // remove all current cookies. This could be a redirect // httpWebRequest.Headers.RemoveInternal(HttpKnownHeaderNames.Cookie); // // add in the new headers from the cookie container for this request // string optCookie2; string cookieString = httpWebRequest.CookieContainer.GetCookieHeader( httpWebRequest.GetRemoteResourceUri(), out optCookie2); if (cookieString.Length > 0) { GlobalLog.Print("CookieModule::OnSendingHeaders() setting Cookie header to:[" + cookieString + "]"); httpWebRequest.Headers[HttpKnownHeaderNames.Cookie] = cookieString; //< } } catch { } } internal static void OnReceivedHeaders(HttpWebRequest httpWebRequest) { GlobalLog.Print("CookieModule.OnReceivedHeaders()"); // // if the app doesn't want us to handle cookies then there's nothing // to do. Note that we're leaving open the possibility that these // settings could be changed between the request being made and the // response received // try { if (httpWebRequest.CookieContainer == null) { return; } // // add any received cookies for this response to the container // HttpWebResponse response = httpWebRequest._HttpResponse as HttpWebResponse; if (response == null) { return; } CookieCollection cookies = null; try { string cookieString = response.Headers.SetCookie; GlobalLog.Print("CookieModule::OnSendingHeaders() received Set-Cookie:[" + cookieString + "]"); if ((cookieString != null) && (cookieString.Length > 0)) { cookies = httpWebRequest.CookieContainer.CookieCutter( response.ResponseUri, HttpKnownHeaderNames.SetCookie, cookieString, false); } } catch { } try { string cookieString = response.Headers.SetCookie2; GlobalLog.Print("CookieModule::OnSendingHeaders() received Set-Cookie2:[" + cookieString + "]"); if ((cookieString != null) && (cookieString.Length > 0)) { CookieCollection cookies2 = httpWebRequest.CookieContainer.CookieCutter( response.ResponseUri, HttpKnownHeaderNames.SetCookie2, cookieString, false); if (cookies != null && cookies.Count != 0) { cookies.Add(cookies2); } else { cookies = cookies2; } } } catch { } if (cookies != null) { response.Cookies = cookies; } } catch { } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- SQLStringStorage.cs
- SimpleApplicationHost.cs
- WebZone.cs
- EventPrivateKey.cs
- SemaphoreSlim.cs
- XmlC14NWriter.cs
- EventTrigger.cs
- DragStartedEventArgs.cs
- ConditionalWeakTable.cs
- SiteMapNodeCollection.cs
- ADMembershipUser.cs
- SolidColorBrush.cs
- EntityDataSourceWrapper.cs
- XamlTreeBuilderBamlRecordWriter.cs
- Command.cs
- CharacterHit.cs
- MarginCollapsingState.cs
- RoleGroup.cs
- ListViewGroupCollectionEditor.cs
- sqlser.cs
- glyphs.cs
- COM2TypeInfoProcessor.cs
- ToolStripRenderer.cs
- MatrixStack.cs
- DomNameTable.cs
- DataControlButton.cs
- PropertyValueChangedEvent.cs
- AnnotationStore.cs
- DateTimePicker.cs
- SqlDependencyUtils.cs
- RegularExpressionValidator.cs
- ClientBuildManagerCallback.cs
- GeometryConverter.cs
- ILGenerator.cs
- StackBuilderSink.cs
- ResourceSetExpression.cs
- ObjectDataSourceWizardForm.cs
- SqlClientWrapperSmiStream.cs
- QilList.cs
- DrawingVisual.cs
- ToolboxDataAttribute.cs
- ValidationErrorCollection.cs
- WebResourceUtil.cs
- TaskFileService.cs
- NewItemsContextMenuStrip.cs
- DataGridColumn.cs
- ContentType.cs
- MaskedTextBox.cs
- FontStyle.cs
- TemplateBindingExtensionConverter.cs
- DataGridViewRowDividerDoubleClickEventArgs.cs
- SurrogateChar.cs
- CachedResourceDictionaryExtension.cs
- ComNativeDescriptor.cs
- ValidatingPropertiesEventArgs.cs
- BindingExpressionBase.cs
- BaseParaClient.cs
- ToolBarTray.cs
- RichTextBox.cs
- Matrix3D.cs
- TransformationRules.cs
- IpcServerChannel.cs
- WebRequestModulesSection.cs
- XmlCompatibilityReader.cs
- CodeGenerator.cs
- Sql8ExpressionRewriter.cs
- MenuStrip.cs
- OciHandle.cs
- Expression.cs
- SoapReflectionImporter.cs
- GeneratedView.cs
- ComAdminWrapper.cs
- DataGridViewRowHeaderCell.cs
- ConfigurationStrings.cs
- Process.cs
- HwndProxyElementProvider.cs
- MethodExecutor.cs
- EntityModelSchemaGenerator.cs
- XmlMessageFormatter.cs
- InputScopeAttribute.cs
- EventProxy.cs
- SingleBodyParameterMessageFormatter.cs
- QilName.cs
- EntityRecordInfo.cs
- Error.cs
- SQLBoolean.cs
- TitleStyle.cs
- SqlAliaser.cs
- MonthChangedEventArgs.cs
- RenderContext.cs
- ObjectFullSpanRewriter.cs
- ADMembershipProvider.cs
- EntityDataSourceWizardForm.cs
- UnsafeNativeMethods.cs
- _DigestClient.cs
- BamlMapTable.cs
- SoapExtension.cs
- NonBatchDirectoryCompiler.cs
- ActiveXHost.cs
- TextRunCache.cs