2010-04-03 41 views
36

Tôi sử dụng bit.ly để rút ngắn các url của mình. Vấn đề của tôi - thông số không được chuyển. Hãy để tôi giải thích tôi sử dụng http://bit.ly/MYiPhoneApps chuyển hướng (giả sử) đến http://iphone.pp-p.net/default.aspx Bây giờ khi tôi thử http://bit.ly/MYiPhoneApps?param=xx thông số này không được thêm vào url kết quả. Tôi biết tôi có thể tạo thêm "url ngắn" bao gồm một tham số - vì vậy http://bit.ly/WithParam sẽ dẫn đến http://www.mysite.com/somepath/apage.aspx?Par1=yy và v.v.Có thể tham số truyền URL rút gọn không?

Nhưng những gì tôi muốn là có một URL ngắn hướng đến một trang - và sau đó tôi muốn thêm một tham số vào url được rút ngắn này - mà shoul (tất nhiên) là đất tại trang của tôi.

Đây có phải là một kết quả ngắn của bit.ly (và một số khác có thể làm điều đó) - hay không "chuyển tiếp tham số" không hoạt động với chuyển hướng 301?

Manfred

Trả lời

16

Không có lý do kỹ thuật nào tại sao không thể thực hiện được. Dịch vụ đơn giản sẽ phải xem xét các tham số nào nó đang được gửi đi, và sau đó viết lại URL mục tiêu cho phù hợp.

Vấn đề là không nhất thiết phải xác định rõ cách thực hiện điều đó.

Giả sử bạn có url http://example.com/default.aspx?foo=bar và có url ngắn http://foo.com/ABCD. Điều gì sẽ xảy ra nếu bạn cố gắng truy cập http://foo.com/ABCD?foo=baz? Nó có nên thay thế giá trị để bạn có được foo=baz không? Nó có nên gắn thêm nó để làm cho foo=bar&foo=baz? Nếu chúng tôi bao gồm cả hai, thứ tự nên được trong?

Hệ thống không thể biết được các thông số an toàn để ghi đè lên và không, bởi vì đôi khi, bạn muốn cả hai trong URL, và nó có thể có vấn đề gì mọi thứ để được thêm vào.

Bạn có thể tranh luận "Vâng, chỉ cần không cho phép điều này cho các URL mà các thông số đã có mặt", nhưng cũng có vấn đề mà nó sẽ làm phức tạp quá trình nhiều hơn nữa. Nếu không có điều này, bạn chỉ cần tra cứu một khóa trong cơ sở dữ liệu và gửi tiêu đề chuyển hướng. Bây giờ, bạn cũng cần phải phân tích URL để kiểm tra các tham số và nối thêm một phần của URL mà bạn đã gọi. Điều đó đòi hỏi nhiều tài nguyên hệ thống hơn cho mỗi chuyển hướng, có thể trở thành một vấn đề lớn nếu dịch vụ của bạn được sử dụng rất thường xuyên - bạn sẽ cần nhiều quyền lực máy chủ hơn để xử lý cùng một lượng chuyển hướng. Tôi không nghĩ rằng sự cân bằng được coi là "đáng giá".

+7

Tôi hy vọng nó sẽ trở thành 'foo = bar & foo = baz', FWIW (tham số được thêm vào url ngắn sẽ xuất hiện sau tất cả các tham số của url dài). Tôi nghĩ rằng điều này sẽ mang lại kết quả lành mạnh trong hầu hết các trường hợp. –

+1

Vì vậy, nó là kỹ thuật (như tôi nghĩ) có thể - nhưng một số loại một "hậu cần" hoặc "làm thế nào để xử lý" vấn đề. Nếu bất cứ ai biết một dịch vụ (ổn định) mà cho phép tham số thêm xin vui lòng cho tôi biết. – ManniAT

3

URL cộng sự rút ngắn một chìa khóa duy nhất dựa trên một URL đầy đủ (thông số và tất cả), vì vậy nó không thể truyền tham số cho một dịch vụ rút ngắn.

thường

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

phải xuất trình một chìa khóa khác nhau để

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

'Parameter chuyển tiếp' chỉ đơn giản là không thể thực hiện trong các loại chuyển hướng, như thông số không phải là phần hợp lệ một URL rút ngắn là hầu hết các dịch vụ (nếu không phải tất cả).

+3

Tất nhiên là có thể *. Ý định của OP không phải là có hai URL mục tiêu ánh xạ chính xác cùng một URL ngắn - một khóa sẽ vẫn chỉ ánh xạ tới một mục tiêu. Anh ta chỉ muốn dịch vụ thao túng mục tiêu bằng cách sử dụng thông tin * bổ sung * cung cấp làm tham số. Hai điều khá khác nhau. –

+2

Tất nhiên là có thể - nếu bạn là nhà cung cấp dịch vụ và xây dựng dịch vụ của bạn để cho phép điều đó.Nhưng OP nói riêng về bit.ly. Và bit.ly cũng như các dịch vụ rút ngắn URL hiện tại khác mà tôi biết không hỗ trợ chuyển tiếp tham số trên các URL ngắn. –

Các vấn đề liên quan