1 /* 2 * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 17 18 #include <alibabacloud/oss/model/GetObjectByUrlRequest.h> 19 #include <alibabacloud/oss/http/HttpType.h> 20 #include <sstream> 21 using namespace AlibabaCloud::OSS; 22 23 GetObjectByUrlRequest(const std::string & url)24GetObjectByUrlRequest::GetObjectByUrlRequest(const std::string &url): 25 GetObjectByUrlRequest(url, ObjectMetaData()) 26 { 27 } 28 GetObjectByUrlRequest(const std::string & url,const ObjectMetaData & metaData)29GetObjectByUrlRequest::GetObjectByUrlRequest(const std::string &url, const ObjectMetaData &metaData) : 30 ServiceRequest(), 31 metaData_(metaData) 32 { 33 setPath(url); 34 setFlags(Flags()|REQUEST_FLAG_PARAM_IN_PATH|REQUEST_FLAG_CHECK_CRC64); 35 } 36 Headers() const37HeaderCollection GetObjectByUrlRequest::Headers() const 38 { 39 auto headers = metaData_.toHeaderCollection(); 40 if (!metaData_.hasHeader(Http::DATE)) { 41 headers[Http::DATE] = ""; 42 } 43 return headers; 44 } 45 Parameters() const46ParameterCollection GetObjectByUrlRequest::Parameters() const 47 { 48 return ParameterCollection(); 49 } 50 Body() const51std::shared_ptr<std::iostream> GetObjectByUrlRequest::Body() const 52 { 53 return nullptr; 54 } 55