code: def getDatastreamDissemination(self, pid, dsID, asOfDateTime=None, stream=False,
                  head=False, rqst_headers=None):
          
          # /objects/{pid}/datastreams/{dsID}/content ? [asOfDateTime] [download]
          http_args = {}
          if rqst_headers is None:
              rqst_headers = {}
          if asOfDateTime:
              http_args['asOfDateTime'] = datetime_to_fedoratime(asOfDateTime)
          url = 'objects/%(pid)s/datastreams/%(dsid)s/content' %  \
              {'pid': pid, 'dsid': dsID}
          if head:
              reqmethod = self.head
          else:
              reqmethod = self.get
          return reqmethod(url, params=http_args, stream=stream, headers=rqst_headers)
docs: Get a single datastream on a Fedora object; optionally, get the version
          as of a particular date time.
  
          :param pid: object pid
          :param dsID: datastream id
          :param asOfDateTime: optional datetime; ``must`` be a non-naive datetime
              so it can be converted to a date-time format Fedora can understand
          :param stream: return a streaming response (default: False); use
              is recommended for large datastreams
          :param head: return a HEAD request instead of GET (default: False)
          :param rqst_headers: request headers to be passed through to Fedora,
              such as http range requests
  
          :rtype: :class:`requests.models.Response`