module GRPCWeb::TextCoder
Placeholder
Public Class Methods
decode_request(request)
click to toggle source
# File lib/grpc_web/server/text_coder.rb, line 13 def decode_request(request) return request unless BASE64_CONTENT_TYPES.include?(request.content_type) # Body can be several base64 "chunks" concatenated together base64_chunks = request.body.scan(%r{[a-zA-Z0-9+/]+={0,2}}) decoded = base64_chunks.map { |chunk| Base64.decode64(chunk) }.join ::GRPCWeb::GRPCWebRequest.new( request.service, request.service_method, request.content_type, request.accept, decoded, ) end
encode_response(response)
click to toggle source
# File lib/grpc_web/server/text_coder.rb, line 24 def encode_response(response) return response unless BASE64_CONTENT_TYPES.include?(response.content_type) encoded = Base64.strict_encode64(response.body) ::GRPCWeb::GRPCWebResponse.new(response.content_type, encoded) end