从WordPress后端获取/用户/我的详细信息

时间:2020-08-28 作者:NeedHelp101

Is there anyway to get the same details as /users/me api command but in WP backend?

我有后端功能,可以获取用户元详细信息

custom api /user_meta

public myFunc( $userId ) {
    $user_meta = get_user_meta( $userId );

    return $user_meta
}
用户元字段具有ACF option 格式奇怪

"place": [
    "a:1:{i:0;s:12:\\"Earth\\";}"
],
但是当使用/users/me API调用时,返回

/users/me default wp api

"place": [
    "Earth"
],
虽然我可以结合使用这两个API来获得适当的用户元详细信息,但这并不理想。在wordpress后端是否有获取/users/me api调用的方法?

1 个回复
最合适的回答,由SO网友:Rup 整理而成

"a:1:{i:0;s:12:\\"Earth\\";}"
这是一个PHP序列化值。如果你把它传给unserialize 您将获得预期的阵列。(看起来您编辑它是因为“Earth”不是12个字符长:应该是s:5:"Earth".)

然而,令我惊讶的是,get\\u user\\u meta还没有为您完成这项工作:它通过maybe_unserialize() 在它返回给您之前,应该自动为您执行此操作。是否有可能在将字符串存储到数据库之前对其进行了双重序列化?(还要注意文档页面上关于取消序列化任意用户提供的字符串的警告。)

不过,为了回答一般问题,您可以从/users/me获得的所有内容都可以通过普通的API调用获得,您不需要从WordPress内部使用REST API。

相关推荐

WooCommerce API安全问题

我正在构建一个本地应用程序,它将使用woocommerce API收集产品。我创建的API用户对该API具有只读访问权限。我正在制作的应用程序将公开,因此暴露api密钥是否存在任何安全问题?因为该应用程序不难反编译并获取API密钥。它是只读的,我在只读用户的API中没有看到任何相关内容。如有任何建议,我们将不胜感激。