pub async fn sign_and_push_named_object_body<D, S, N>(
    signer: &S,
    obj: &mut N,
    sign_source: &SignatureSource
) -> BuckyResult<()>where
    D: ObjectType,
    D::DescType: RawEncode,
    D::ContentType: RawEncode + BodyContent,
    S: Signer,
    N: NamedObject<D>,