2010-04-03 51 views
36

Uso bit.ly para acortar mis URL. Mi problema: los parámetros no se pasan. Déjenme explicarles que utilizo http://bit.ly/MYiPhoneApps que redirige (digamos) a http://iphone.pp-p.net/default.aspx Ahora, cuando intento http://bit.ly/MYiPhoneApps?param=xx, este parámetro no se agrega a la url resultante. Sé que podría crear una "url corta" adicional que incluye un parámetro, por lo que http://bit.ly/WithParam daría como resultado http://www.mysite.com/somepath/apage.aspx?Par1=yy y así sucesivamente.¿Puede un acortador de URL pasar parámetros?

Pero lo que quiero es tener una URL corta dirigiendo a una página, y luego quiero agregar un parámetro a esta url acortada, que debe (por supuesto) aterrizar en mi página.

¿Es esto una ventaja de bit.ly (y otros son capaces de hacerlo) o el "reenvío de parámetros" no funciona con las 301 redirecciones?

Manfred

Respuesta

16

No hay ninguna razón técnica por la cual no se pudo hacer. El servicio simplemente tendría que ver qué parámetros se envían y luego reescribir la URL objetivo en consecuencia.

El problema es que no está necesariamente bien definido cómo hacerlo.

Supongamos que tiene la url http://example.com/default.aspx?foo=bar, y tiene la url corta http://foo.com/ABCD. ¿Qué debería pasar si intentas acceder al http://foo.com/ABCD?foo=baz? ¿Debería reemplazar el valor, para que obtenga foo=baz? ¿Debe agregarlo para hacer foo=bar&foo=baz? Si incluimos ambos, ¿en qué orden deberían estar?

El sistema no puede saber qué parámetros son seguros para anular y cuáles no, porque a veces, DESEA ambos en la URL, y se puede importar qué cosas fin se añadió en.

Se podría argumentar "Bueno, simplemente no permitas esto para las URL donde los parámetros ya están presentes", pero también existe el problema de que va a complicar el proceso mucho más. Sin esto, solo busca una clave en una base de datos y envía un encabezado de redirección. Ahora, también debe analizar la URL para verificar los parámetros y anexar parte de la URL a la que fue llamado. Eso requiere más recursos del sistema por redirección, lo que puede convertirse en un gran problema si su servicio se usa con mucha frecuencia: necesitará más potencia del servidor para manejar la misma cantidad de redireccionamientos. No creo que se considere que la compensación valga la pena.

+7

Esperaría que se convirtiera en 'foo = bar & foo = baz', FWIW (los parámetros agregados a la url corta deberían venir después de todos los parámetros que forman parte de la url larga). Creo que esto arrojaría resultados sensatos en la mayoría de los casos. –

+1

Por lo tanto, es técnico (como pensé) posible, pero tiene algún tipo de problema de "logística" o "cómo manejarlo". Si alguien conoce un servicio (estable) que permita agregar parámetros, por favor avíseme. – ManniAT

3

URL asociados acortamiento de una clave única basada en una URL completa (parámetros y todos), por lo que no es posible pasar parámetros a un servicio de acortamiento.

Típicamente

http://iphone.pp-p.net/default.aspx?param=10

debe producir una clave diferente a 'reenvío parámetro'

http://iphone.pp-p.net/default.aspx?param=22

simplemente no es posible en este tipo de redirecciones, como parámetros no son partes válidas de una URL acortada es la mayoría de los servicios (si no todos).

+3

Por supuesto es * posible *. La intención de OP es no hacer que dos URL de destino se correlacionen exactamente con la misma URL corta: una tecla solo se correlacionaría con un objetivo. Solo quiere que el servicio manipule el objetivo utilizando información * adicional * como parámetros. Las dos cosas son bastante diferentes. –

+2

Por supuesto que es posible, si usted es el proveedor de servicios y crea su servicio para permitir eso.Pero el OP habla sobre bit.ly específicamente. Y bit.ly ni ningún otro servicio actual de acortamiento de URL que conozca admite el reenvío de parámetros en URL cortas. –

Cuestiones relacionadas