Actualmente estoy usando un ayudante link_to en Ver para pasar parámetros como el título, el autor, image_url e ISBN vuelta al controladorRuby on Rails: Cómo pasar parámetros a la vista al controlador con link_to sin parámetros que muestran en el URL
<%= link_to 'Sell this item',new_item_path(:title => title, :author => authors, :image_url=>image, :image_url_s=>image_s, :isbn=>isbn, :isbn13=>isbn13) %>
controlador entonces asignar los parámetros a un objeto para ser utilizado por un formulario en vista más tarde (en new.html.erb)
def new
@item = Item.new
@item.title = params[:title]
@item.author = params[:author]
@item.image_url = params[:image_url]
@item.image_url_s = params[:image_url_s]
@item.isbn = params[:isbn]
@item.isbn13 = params[:isbn13]
respond_to do |format|
format.html # new.html.erb
format.xml { render :xml => @item }
end
end
new.html.erb a continuación, se llama. Esto es todo funciona bien, pero la url muestra todos los parámetros
http://localhost:3000/items/new?author=Michael+Harvey&image_url=http://ecx.images-amazon.com/images/I/51vt1uVjvLL._SL160_.jpg&image_url_s=http://ecx.images-amazon.com/images/I/51vt1uVjvLL._SL75_.jpg&isbn13=9780307272508&isbn=0307272508&title=The+Third+Rail
¿Hay alguna manera de hacer que los parámetros no aparecen en la URL?
¿Por qué lo necesitas? ¿De dónde viene este parámetro? ¿Es de la entrada del usuario o de dónde? Cuando lo miro, parece que estás haciendo algo de una manera extraña. Explique por qué lo hace, porque probablemente haya una mejor manera. – klew
Amazon devuelve estos parámetros en un formato de salida XML. Tengo una barra de búsqueda que permite al usuario consultar la base de datos de Amazon (usando Amazon ECS). Después de cada consulta, mi sitio completará los primeros diez elementos del resultado en una tabla. Cada elemento tendrá un botón que le permite al usuario seleccionar ese artículo para vender. Necesito que estos parámetros se muestren en un formulario en otra Vista. Estos parámetros eventualmente se guardarán en mi base de datos. La razón por la que no me gustan los parámetros que aparecen es que el usuario puede manipular manualmente la URL. – user1994764
no parece que ocultar los parámetros del usuario va a resolver su problema. El usuario malintencionado siempre podrá descubrir los parámetros y manipularlos. Al implementar su enfoque, hace que el código sea más complicado, pero en realidad no mejora la seguridad de ninguna manera. – paulus