URL cho một liên kết đến Twitter cho một tweet cụ thể


87

Tôi có một số Javascript sử dụng API Twitter để lấy tweet. Tôi phân tích cú pháp dữ liệu và sử dụng jQuery để tạo HTML cho DOM.

Một khía cạnh của những gì tôi muốn hiển thị là liên kết "Xem tweet này" - vâng, sắp xếp nghe có vẻ ngớ ngẩn, nhưng nó cho phép người dùng lấy URL cho một tweet cụ thể.

Tôi đang tạo một thẻ với một href. URL có dạng:

http://twitter.com/{twitter-user-id}/status/{tweet-status-id}

trong đó nội dung trong dấu ngoặc nhọn là dữ liệu thực tế được trích xuất từ ​​tweet (không, tôi không bao gồm dấu ngoặc nhọn). Ví dụ:

http://twitter.com/Atechtrader/status/57432099984130050

Điều xảy ra trong quá trình hoạt động là điều này hoạt động đối với một số tweet, nhưng không hoạt động với những tweet khác. Đối với những lỗi không thành công, máy chủ Twitter phản hồi bằng nội dung cho biết trang được yêu cầu không tồn tại.

Tôi có làm điều gì sai?


1
Có, tôi đã làm sai điều gì đó - Tôi không trích xuất ID chuỗi. Lỗi của tôi. Xin lỗi vì sự ồn ào.
Zhami

Câu trả lời:


155

https://twitter.com/statuses/IDnên làm việc.
nó sẽ chuyển hướng đến trạng thái cần thiết.


31
Điều này không hoạt động trên thiết bị di động, hãy sử dụng biểu mẫu dài hơn nếu bạn muốn một liên kết có thể mở từ điện thoại di động: twitter.com/twitter-user-screen-name/status/tweet-id-str
UKatz

2
@UKatz tiếc là liên kết đó có vẻ bị hỏng :(
vỗ tay vào

1
@clapas Tôi nghĩ rằng đó chỉ là một URL Ví dụ, bạn sẽ thay thế twitter-user-screen-nametweet-id-strvới các giá trị thích hợp cho một liên kết làm việc.
Thomas Foster

Điều này hoạt động trên trình duyệt máy tính. Tuy nhiên, nếu bạn đang sử dụng thiết bị di động, máy chủ Twitter sẽ tự động chuyển hướng nó đến https://mobile.twitter.com/statuses/ID, dẫn đến trang bị lỗi. Vì vậy, giải pháp trên tất cả vẫn là https://twitter.com/{twitter-user-id}/status/{tweet-status-id}.
Owen Zhao

Điều này cũng không thành công trên các trình duyệt macOS, bạn cần thge twitter-user-id cho mỗi thiết bị di động
mmmmmm

52

Thật không may, tất cả các câu trả lời được cung cấp cho đến nay đều dựa vào chuyển hướng HTTP.

Liên kết trực tiếp có dạng: https://twitter.com/i/web/status/ {tweet-status-id}


2
đây là giải pháp duy nhất hoạt động cho cả hai mà không cần phải cung cấp tên người dùng một cách rõ ràng (điều này rất dễ bay hơi nếu bạn hỏi tôi ... không có gì giống như việc mồ côi tất cả các liên kết của bạn theo ý thích của người dùng ...). mà nói, làm bất cứ một bí quyết nếu điều này được "hỗ trợ" ... có vẻ như hacky ...
nokturnal

1
Đây cũng là những gì Twitter tự sử dụng khi đặt URL bên trong tweet (API luồng). Rất dễ dàng mà không cần xây dựng URL dựa trên UserID.
Maziyar

46

FYI: id_str là biến bạn cần gọi thay vì id

id_str phải được lấy từ đối tượng tweet và được thay thế trong https://twitter.com/statuses/[id_str]


2
đã cho tôi một chút thời gian để con số mà bạn có nghĩa là id_strnên được lấy từ các đối tượng tweet và nhập như ID của câu trả lời sagivo của:https://twitter.com/statuses/[id_str]
Dominic

1
Đây là chỉ cần thiết cho hoạt Javascript và các môi trường khác mà không hỗ trợ số nguyên 64-bit
chribsen



3

Tôi đã được thử nó. Nó hoạt động tốt: - Web: https://twitter.com/statuses/ID - Mobile && Web: https://twitter.com/User_ID/statuses/Tweet_ID

Tôi hy vọng nó hữu ích cho bạn.


@ seyfi-dertli câu trả lời bao gồm thiết bị di động nhưng cũng hoạt động cho máy tính để bàn.
Leopold Joy

Bạn đã thử chưa ??? Nếu bạn không có id_user, bạn chỉ sử dụng id_tweet với web. Và twitter.com/User_ID/statuses/ID sẽ chính xác với tất cả.
Kiều Văn Thái

Giải pháp của @Jeff Puckett phù hợp với tôi trên cả web và thiết bị di động.
Leopold Joy
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.