tencentyun / cos-cpp-sdk-v5

MIT License
56 stars 46 forks source link

fix bug: not support lowercase keys in response header #34

Open zhoumhh opened 5 years ago

zhoumhh commented 5 years ago

void BaseResp::ParseFromHeaders(const std::map<std::string, std::string>& headers)

In this function, parameter headers is a map, keys in it maybe full lowercase in some environment, such as:

headers = {
    { "content-length": "5" },
    { "content-type": "text/plain" }
}

But variables (kReqHeader*) is defined by initial capitalization in "cos_params.h", such as:

const std::string kReqHeaderContentLen = "Content-Length";
const std::string kReqHeaderContentType = "Content-Type";

This function couldn't parse header correctly when response header is full lowercase!

The code added will find the value in map by lowercase key again.