lib/fog/aliyun/requests/compute/detach_disk.rb in fog-aliyun-0.3.19 vs lib/fog/aliyun/requests/compute/detach_disk.rb in fog-aliyun-0.4.0
- old
+ new
@@ -1,7 +1,9 @@
# frozen_string_literal: true
+require 'addressable'
+
module Fog
module Compute
class Aliyun
class Real
# {Aliyun API Reference}[https://docs.aliyun.com/?spm=5176.100054.3.1.DGkmH7#/pub/ecs/open-api/disk&detachdisk]
@@ -23,10 +25,10 @@
device = _options[:device]
if device
parameters['Device'] = device
pathUrl += '&Device='
- pathUrl += URI.encode(device, '/[^!*\'()\;?:@#&%=+$,{}[]<>`" ')
+ pathUrl += Addressable::URI.encode_component(device, Addressable::URI::CharacterClasses::UNRESERVED + '|')
end
signature = sign(@aliyun_accesskey_secret, parameters)
pathUrl += '&Signature='
pathUrl += signature