go.charczuk.com@v0.0.0-20240327042549-bc490516bd1a/sdk/r2/opt_cookie.go (about)

     1  /*
     2  
     3  Copyright (c) 2023 - Present. Will Charczuk. All rights reserved.
     4  Use of this source code is governed by a MIT license that can be found in the LICENSE file at the root of the repository.
     5  
     6  */
     7  
     8  package r2
     9  
    10  import "net/http"
    11  
    12  // OptCookie adds a cookie to a context.
    13  func OptCookie(cookie *http.Cookie) Option {
    14  	return func(r *Request) error {
    15  		if r.req.Header == nil {
    16  			r.req.Header = make(http.Header)
    17  		}
    18  		r.req.AddCookie(cookie)
    19  		return nil
    20  	}
    21  }
    22  
    23  // OptCookieValue adds a cookie value to a context.
    24  func OptCookieValue(key, value string) Option {
    25  	return OptCookie(&http.Cookie{Name: key, Value: value})
    26  }