我正在设计我的API,并在网址
中指定了可选的API版本 cvNamedWindow("OpenCV", 0);
while(true)
{
IplImage img = cvQueryFrame(cvCreateCameraCapture(0));
CvScalar[] s = new CvScalar[img.height()*img.width()+2];
for(int i = 0;i<=img.width();i++)
{
for(int j = 0;j<=img.height();j++)
{
s[j] = cvGet2D(img, i, j);
}
}
cvShowImage("OpenCV", img);
cvWaitKey(33);
}
我是否也应该在HTTP标头中指定一个(为了灵活性)?
如果两种方法之间存在冲突,我该怎么办?
答案 0 :(得分:1)
允许从2种不同的输入方法(querystring和Header)输入API版本没有明显的优势。但是,如果两者都由客户端指定,则这里的缺点是冲突解决。
无论是在标头还是在查询字符串中,都不应该指定API版本的正确或错误方式。但请记住,URL需要解析,而大多数是通过框架完成的,但仍然是您用来解析URL以从中提取值的计算资源。
我(个人)更喜欢简单地使用标头。此外,将URL保持为地址仅仅指向客户端的功能/意图感觉更清晰。