2010-04-08 3 views
1

J'ai construit une API en utilisant actionwebservice et quand un client appelle une méthode pour transmettre une chaîne vide (""), c'est to_s value est # au lieu de "". Mais quand le client passe en "bonjour", sa valeur est "bonjour".Chaîne vide Arguments API pour actionwebservice reçus en tant que "SOAP :: Mapping :: Object" au lieu de ""

class UsersApiController < ApiController 

    web_service_api UserApi 

    def create_or_update(arg1) 
    Rails.logger.info arg1.to_s # Displays "#<SOAP::Mapping::Object:0x3a89c08>" if arg1 is an empty string 
    end 
end 

Répondre

0

Ce n'est pas la meilleure façon, mais c'est la seule solution que j'ai trouvé à ce jour:

arg1 = "" if /#<SOAP::Mapping::Object:/ =~ arg1.to_s 
0
arg1 = nil if arg1.kind_of?(SOAP::Mapping::Object) 
Questions connexes