diff --git a/openstack/storage/v1/containers/containers.go b/openstack/storage/v1/containers/containers.go
index 8fa19aa..9ae344b 100644
--- a/openstack/storage/v1/containers/containers.go
+++ b/openstack/storage/v1/containers/containers.go
@@ -39,8 +39,7 @@
 
 // GetOpts is a structure that holds parameters for getting a container's metadata.
 type GetOpts struct {
-	Name     string
-	Metadata map[string]string
+	Name string
 }
 
 // ExtractInfo is a function that takes a ListResult and returns the containers' information.
diff --git a/openstack/storage/v1/containers/requests.go b/openstack/storage/v1/containers/requests.go
index d7ab2ba..558a6a8 100644
--- a/openstack/storage/v1/containers/requests.go
+++ b/openstack/storage/v1/containers/requests.go
@@ -131,10 +131,6 @@
 func Get(c *gophercloud.ServiceClient, opts GetOpts) (GetResult, error) {
 	h := c.Provider.AuthenticatedHeaders()
 
-	for k, v := range opts.Metadata {
-		h["X-Container-Meta-"+k] = v
-	}
-
 	url := containerURL(c, opts.Name)
 	resp, err := perigee.Request("HEAD", url, perigee.Options{
 		MoreHeaders: h,
diff --git a/openstack/storage/v1/objects/objects.go b/openstack/storage/v1/objects/objects.go
index 4cf3d2d..cd248c8 100644
--- a/openstack/storage/v1/objects/objects.go
+++ b/openstack/storage/v1/objects/objects.go
@@ -58,7 +58,6 @@
 type GetOpts struct {
 	Container string
 	Name      string
-	Headers   map[string]string
 	Params    map[string]string
 }
 
@@ -120,7 +119,10 @@
 	var body []byte
 	defer dr.Body.Close()
 	body, err := ioutil.ReadAll(dr.Body)
-	return body, err
+	if err != nil {
+		return body, fmt.Errorf("Error trying to read DownloadResult body: %v", err)
+	}
+	return body, nil
 }
 
 // ExtractMetadata is a function that takes a GetResult (of type *http.Response)
diff --git a/openstack/storage/v1/objects/requests.go b/openstack/storage/v1/objects/requests.go
index 91b2b42..7b00127 100644
--- a/openstack/storage/v1/objects/requests.go
+++ b/openstack/storage/v1/objects/requests.go
@@ -157,10 +157,6 @@
 func Get(c *gophercloud.ServiceClient, opts GetOpts) (GetResult, error) {
 	h := c.Provider.AuthenticatedHeaders()
 
-	for k, v := range opts.Headers {
-		h[k] = v
-	}
-
 	url := objectURL(c, opts.Container, opts.Name)
 	resp, err := perigee.Request("HEAD", url, perigee.Options{
 		MoreHeaders: h,
