我只想在Web上使用ruby on rails集成paytm,现在的问题是,当我从数据库中获取属性值(如MID,CUST_ID,WEBSITE,CALLBACK_URL,INDUSTRY_TYPE_ID和其他一些属性)时,出现了一个问题在下面。
属性:
paramList [“ WEBSITE”] =“ WEBSTAGING”
无效:不允许使用特殊字符
def start_payment
unless @paytm_keys.nil?
paramList = Hash.new
paramList["MID"] = ""
paramList["ORDER_ID"] = "#{Time.now.to_i.to_s}"
paramList["CUST_ID"] = "#{Time.now.to_i.to_s}"
paramList["INDUSTRY_TYPE_ID"] = @paytm_keys.industry_type_id
paramList["CHANNEL_ID"] = @paytm_keys.channel_id
paramList["TXN_AMOUNT"] = @payable_amount
paramList["MOBILE_NO"] = @paytm_keys.mobile_number
paramList["EMAIL"] = @paytm_keys.email
paramList["WEBSITE"] = "WEBSTAGING"
paramList["CALLBACK_URL"] = @paytm_keys.paytm_url
@paramList=paramList
puts @paramList
@checksum_hash = generate_checksum()
respond_to do |format|
format.js
format.html
end
else
redirect_to new_checkout_path, alert: "Right now you don't have to pay."
end
end
答案 0 :(得分:0)
似乎您在哈希中传递的参数之一中有一些特殊字符。看看
的输出puts @paramList
如果您可以在问题中发帖,这可能会有所帮助,但是您可能希望通过替换或删除看跌期权中的所有有效字母数字字符来混淆真实凭证,以便向我们提供以下输出:
puts paramList.to_s.gsub(/\w/, '')
# this should only contain non alphanumeric characters which
# would be safe to post in your question.