gRPC 5 NOT_FOUND vs 16 UNAUTHENTICATED
Both gRPC 5 (NOT_FOUND) and 16 (UNAUTHENTICATED) belong to the gRPC Status Codes category. 5 indicates that some requested entity was not found. For example, a file or directory that the RPC was supposed to operate on does not exist. Meanwhile, 16 means that the request does not have valid authentication credentials for the operation.
คำอธิบาย
Some requested entity was not found. For example, a file or directory that the RPC was supposed to operate on does not exist.
เมื่อคุณพบเห็น
The resource referenced in the request doesn't exist — such as looking up a user by ID that has been deleted or never created.
วิธีแก้ไข
Verify the resource identifier is correct. Ensure the resource was created before accessing it, or handle the not-found case gracefully in your client.
คำอธิบาย
The request does not have valid authentication credentials for the operation.
เมื่อคุณพบเห็น
No credentials were provided, or the provided token/certificate is expired or invalid. Different from PERMISSION_DENIED (code 7), which means authenticated but not authorized.
วิธีแก้ไข
Provide valid authentication credentials (e.g., refresh the OAuth token, regenerate the API key, or renew the client certificate).
ความแตกต่างหลัก
gRPC 5: Some requested entity was not found. For example, a file or directory that the RPC was supposed to operate on does not exist.
gRPC 16: The request does not have valid authentication credentials for the operation.
You encounter 5 when the resource referenced in the request doesn't exist — such as looking up a user by ID that has been deleted or never created.
You encounter 16 when no credentials were provided, or the provided token/certificate is expired or invalid. Different from PERMISSION_DENIED (code 7), which means authenticated but not authorized.
ควรใช้อันไหนเมื่อไร
For 5 (NOT_FOUND): Verify the resource identifier is correct. Ensure the resource was created before accessing it, or handle the not-found case gracefully in your client. For 16 (UNAUTHENTICATED): Provide valid authentication credentials (e.g., refresh the OAuth token, regenerate the API key, or renew the client certificate).