2013-10-24 18 views
7

Tôi đang cố gắng tải tệp lên GitHub qua API GITHub (http://developer.github.com/v3/repos/contents/). Bằng cách nào đó tôi không thể tải lên tệp. Khi tôi cố gắng tải lên tệp hiện có, nó đã cho tôi thông báo "{\" message \ ": \" refs/heads/master được mong đợi là ee1cd720841a4b5b06a8339c333c56b1748e66f9 \ ", \" documentation_url \ ": \" http://developer.github.com/v3/repos/contents/ \ "}". Khi tôi đã đi đến github và cố gắng để xóa tập tin bằng cách sử dụng trang web nó đã cho tôi dưới đây lỗi. Tôi có thể giải quyết vấn đề bằng cách đặt lại đầu cho phiên bản trước và tiếp tục. Nhưng tôi đang cố gắng hiểu những gì gây ra hành vi này và làm thế nào tôi có thể ngăn chặn tương tự trong tương lai. Cả Google và Github đều không thể trả lời tôi để tìm kiếm thứ gì đó từ cộng đồng. Cảm ơn vì đã điều tra việc này. enter image description hereVấn đề API GITHub với tải lên tệp

+3

Bạn có cơ hội sử dụng API kho lưu trữ để ghi vào kho lưu trữ liên tiếp nhanh không? Ví dụ: bạn có đang tạo nhiều tệp bằng cách thực hiện cuộc gọi API mới trước khi các cuộc gọi trước đó đã hoàn tất không? –

+0

Cảm ơn bạn đã trả lời Ivan !! Giả định của bạn là đúng. Tôi đang cố tạo nhiều tệp liên tiếp như là một phần của quá trình triển khai. Về phía lưu ý mặc dù tôi đang làm tải lên đồng bộ vì vậy một khi tôi nhận được phản hồi trở lại từ GiHub API ok 200 OK tôi phát hành một yêu cầu tạo/cập nhật tập tin tiếp theo. – TorontoKid

+1

Tôi đoán bạn đang đánh một trường hợp góc với API do những lần viết tuần tự đang diễn ra cái này. Bạn có thể vui lòng thử đặt một giấc ngủ trong kịch bản của bạn để bạn chờ một hoặc hai giây giữa các cuộc gọi? Điều đó sẽ giải quyết vấn đề. Chúng tôi đang nỗ lực để khắc phục vấn đề này, nhưng tôi không thể đưa ra bất kỳ lời hứa nào về thời điểm điều này sẽ được giải quyết. Hãy cho tôi biết nếu điều đó không giúp được gì. –

Trả lời

4

Như Ivan đã đề xuất, nếu chúng tôi cố gắng tạo/cập nhật tệp bằng cách sử dụng nhanh kế sử dụng API, nó gây ra hành vi được đề cập. Cho đến khi vấn đề được khắc phục, chúng tôi có thể giải quyết vấn đề này bằng cách tạo luồng ngủ giữa hai yêu cầu. Tôi hy vọng nó sẽ giúp ai đó.

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