答案1
好的,既然@Andrew 要求我这么做,我就发布一个答案。(最初我认为这有点没意义,因为这里的帖子是公开的,其他人可以从中学习。但我认为从下面的代码中学到的东西并不多。)
\documentclass[tikz,border=3.14mm]{standalone}
\usetikzlibrary{positioning}
\begin{document}
\begin{tikzpicture}[block/.style={draw,minimum width=2cm,minimum height=1cm}, font=\sffamily]
\node[block](C) {Client};
\node[block,right=9cm of C](S) {Server};
\draw[-latex] (C.15) -- (S.165)
node[midway,above]{Request(GET,POST,PUT,DELETE,HEAD,OPTION)};
\draw[-latex] (S.195) -- (C.-15) node[midway,below]{Response(z.B.\ JSON,XML)};
\end{tikzpicture}
\end{document}
以下是一些一般性评论。请注意,这些评论并非旨在严厉批评,但我希望您阅读并思考一下:你之前的问题,您有一个 MWE,这本身就是一件好事。但是,这个 MWE 与另一位作者的代码非常相似,这让我认为您有可能从之前的帖子中复制了它。从某个地方复制代码在我看来是可以的,只要您给予原作者信用即可。如果你不这样做,这会让这里的一些用户,包括我自己,有点不高兴。然而,在我看来,解决方案不仅仅是不要发布 MWE,因为这会让潜在的回答者只需从屏幕截图中输入内容,而许多人不喜欢这样做。相反,我建议你可能想要使用以前的答案,尝试理解它们并根据你的需要进行修改,如果你遇到困难,你有一个 MWE,如果与它的来源一起发布,将引发一个问题,从而引发更有利的反馈。这还会引发其他人可以从中学习的帖子。
答案2
只是为了和 MetaFun 一起玩。
\startMPinclusions
input rboxes;
\stopMPinclusions
\startMPpage
numeric u; u := 1cm;
interim defaultdx := .5u;
interim defaultdy := .5u;
boxit.c("Client"); c.c = (-6.5u,0);
boxit.s("Server"); s.c = (+6.5u,0);
drawboxed(c,s);
path p,q;
p := .5[c.ne,c.e] -- .5[s.nw,s.w];
q := .5[s.sw,s.w] -- .5[c.se,c.e];
drawarrow p;
drawarrow q;
label.top("Request(GET,POST,PUT,DELETE,HEAD,OPTION)", point .5 along p);
label.bot("Response(z.B.\ JSON,XML)", point .5 along q);
\stopMPpage