设计REST API
时,执行http请求时添加unique request identifier
的最佳实践是什么?
我通常会在标头中将其添加为x-request-id
,但今天听说有人提到将其作为查询字符串添加到url中!
同样,在进行了一些研究之后,似乎有些人将其添加到响应主体中并作为有效载荷的一部分发送!
在这三个之中,unique request identifier
的最佳应用是什么,为什么?每种方法的利弊分别是什么?
答案 0 :(得分:2)
HTTP doesn't include any request identifiers。
但是,如果您需要一个(例如,用于调试或日志增强的 ),则可以使用自己选择的标头。诸如 <ngx-datatable-column prop="UserAcceptanceStatus" name="Action">
<ng-template let-row="row" ngx-datatable-cell-template let-value="value">
<mat-select (selectionChange)="changeStatus(row.JobId, $event.value)" [value]="value">
<mat-option class="option" *ngFor="let any of status" [value]="any.value">{{any.action}}</mat-option>
</mat-select>
</ng-template>
</ngx-datatable-column>
.option {
color: $ebPurpleText;
text-align-last: center;
width: inherit;
font-family: Montserrat;
font-weight: bold;
font-size: 24px;
border: solid 1px #78206d;
width: 180px;
height: 68px;
}
,X-Request-Id
和X-Correlation-Id
之类的标题对于您的注释中描述的情形看起来不错:通过内部微服务体系结构中的多个请求跟踪一个请求
此标头的值可以是UUID。