<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:DengXian;
        panose-1:2 1 6 0 3 1 1 1 1 1;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:"\@DengXian";
        panose-1:2 1 6 0 3 1 1 1 1 1;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:#0563C1;
        text-decoration:underline;}
span.EmailStyle18
        {mso-style-type:personal-compose;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;
        font-family:"Calibri",sans-serif;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="EN-US" link="#0563C1" vlink="#954F72" style="word-wrap:break-word">
<div class="WordSection1">
<p class="MsoNormal"><span style="font-size:12.0pt">hi, <o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">              Etag is to check whether the json string returned by the server has changed ,  I plan to use MD5 encryption to generate etag , can’t  find etag in http request header.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">              Here are the steps I tested:<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">              1,  I used postman to send the first request to a URL, and  added the etag property to the header of the response use hard code , then http connection function async_write respond  header  buffer
<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">              2,  Request the same url, read the header of the request, no etag can be found.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">              Here are some logs:<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">              <o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">Respond:<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">Jan 11 23:45:25 intel-obmc bmcweb[361]: (2021-01-11 23:45:25) [DEBUG "http_connection.hpp":683] 0x1a3e4c8 doWrite<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">Jan 11 23:45:25 intel-obmc bmcweb[361]: zs_debug res result : 200<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">Jan 11 23:45:25 intel-obmc bmcweb[361]:  field : Strict-Transport-Security , /text: Strict-Transport-Security ,Value: max-age=315<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">36000; includeSubdomains; preload<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">Jan 11 23:45:25 intel-obmc bmcweb[361]:  field : X-Frame-Options , /text: X-Frame-Options ,Value: DENY<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">Jan 11 23:45:25 intel-obmc bmcweb[361]:  field : Pragma , /text: Pragma ,Value: no-cache<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">Jan 11 23:45:25 intel-obmc bmcweb[361]:  field : Cache-Control , /text: Cache-Control ,Value: no-Store,no-Cache<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">Jan 11 23:45:25 intel-obmc bmcweb[361]:  field : <unknown-field> , /text: X-XSS-Protection ,Value: 1; mode=block<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">Jan 11 23:45:25 intel-obmc bmcweb[361]:  field : <unknown-field> , /text: X-Content-Type-Options ,Value: nosniff<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">Jan 11 23:45:25 intel-obmc bmcweb[361]:  field : <unknown-field> , /text: Content-Security-Policy ,Value: default-src 'none'; img<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">-src 'self' data:; font-src 'self'; style-src 'self'; script-src 'self'; connect-src 'self' wss:<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">Jan 11 23:45:25 intel-obmc bmcweb[361]:  field : Content-Type , /text: Content-Type ,Value: application/json<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">Jan 11 23:45:25 intel-obmc bmcweb[361]:  field : ETag , /text: ETag ,Value: ba2e34ec8c7d9168cc2bf880a1674ae4<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">Jan 11 23:45:25 intel-obmc bmcweb[361]:  field : Content-Length , /text: Content-Length ,Value: 525<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">Jan 11 23:45:25 intel-obmc bmcweb[361]: zs_debug response: {<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">Jan 11 23:45:25 intel-obmc bmcweb[361]:   "@odata.id": "/redfish/v1/CertificateService/CertificateLocations",<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">Jan 11 23:45:25 intel-obmc bmcweb[361]:   "@odata.type": "#CertificateLocations.v1_0_0.CertificateLocations",<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">Jan 11 23:45:25 intel-obmc bmcweb[361]:   "Description": "Defines a resource that an administrator can use in order to locate all<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">certificates installed on a given service",<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">Jan 11 23:45:25 intel-obmc bmcweb[361]:   "Id": "CertificateLocations",<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">Jan 11 23:45:25 intel-obmc bmcweb[361]:   "Links": {<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">Jan 11 23:45:25 intel-obmc bmcweb[361]:     "Certificates": [<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">Jan 11 23:45:25 intel-obmc bmcweb[361]:       {<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">Jan 11 23:45:25 intel-obmc bmcweb[361]:         "@odata.id": "/redfish/v1/Managers/bmc/NetworkProtocol/HTTPS/Certificates/1"<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">Jan 11 23:45:25 intel-obmc bmcweb[361]:       }<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">Jan 11 23:45:25 intel-obmc bmcweb[361]:     ],<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">Jan 11 23:45:25 intel-obmc bmcweb[361]:    
<a href="mailto:Certificates@odata.count">Certificates@odata.count</a>: 1<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">Jan 11 23:45:25 intel-obmc bmcweb[361]:   },<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">Jan 11 23:45:25 intel-obmc bmcweb[361]:   "Name": "Certificate Locations"<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">Jan 11 23:45:25 intel-obmc bmcweb[361]: }<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">Jan 11 23:45:25 intel-obmc bmcweb[361]: (2021-01-11 23:45:25) [DEBUG "http_connection.hpp":698] 0x1a3e4c8 async_write 997 bytes<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">Second Request: <o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">Jan 11 23:45:25 intel-obmc bmcweb[361]: (2021-01-11 23:45:25) [DEBUG "http_connection.hpp":511] 0x1a3e4c8 doReadHeaders<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">Jan 11 23:45:25 intel-obmc bmcweb[361]: zs_debug read http_head :GET /redfish/v1/CertificateService/CertificateLocations HTTP/1.1<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">Jan 11 23:45:25 intel-obmc bmcweb[361]: Authorization: Basic cm9vdDowcGVuQm1j<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">Jan 11 23:45:25 intel-obmc bmcweb[361]: User-Agent: PostmanRuntime/7.28.4<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">Jan 11 23:45:25 intel-obmc bmcweb[361]: Accept: */*<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">Jan 11 23:45:25 intel-obmc bmcweb[361]: Cache-Control: no-cache<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">Jan 11 23:45:25 intel-obmc bmcweb[361]: Postman-Token: 1981d43c-7067-4959-a853-dd7f93bb04fa<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">Jan 11 23:45:25 intel-obmc bmcweb[361]: Host: 10.239.138.19<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">Jan 11 23:45:25 intel-obmc bmcweb[361]: Accept-Encoding: gzip, deflate, br<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">Jan 11 23:45:25 intel-obmc bmcweb[361]: Connection: keep-alive<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">Jan 11 23:45:25 intel-obmc bmcweb[361]:<o:p></o:p></span></p>
</div>
</body>
</html>