使用 Nodejs 面对 api

2024-01-30

我正在使用使用 Node js 的 Azure Face api,下面是代码。然而,我想使用本地图像并发布它,而不是托管一些图像。我尝试了不同的选项,但它无法识别图像格式或无效的图像网址

以下是我尝试过的事情

1) var stream = fs.createReadStream('local image url');
2) var imageAsBase64 = fs.readFileSync('image.jpg','base64');

下面是代码

'use strict';

const request = require('request');

// Replace <Subscription Key> with your valid subscription key.
const subscriptionKey = '<Subscription Key>';

// You must use the same location in your REST call as you used to get your
// subscription keys. For example, if you got your subscription keys from
// westus, replace "westcentralus" in the URL below with "westus".
const uriBase = 'https://westcentralus.api.cognitive.microsoft.com/face/v1.0/detect';

const imageUrl =
    'https://upload.wikimedia.org/wikipedia/commons/3/37/Dagestani_man_and_woman.jpg';

// Request parameters.
const params = {
    'returnFaceId': 'true',
    'returnFaceLandmarks': 'false',
    'returnFaceAttributes': 'age,gender,headPose,smile,facialHair,glasses,' +
        'emotion,hair,makeup,occlusion,accessories,blur,exposure,noise'
};

const options = {
    uri: uriBase,
    qs: params,
   // body: '{"url": ' + '"' + imageUrl + '"}',
   //body: stream,
   body:imageAsBase64,
    headers: {
        'Content-Type': 'application/json',
        'Ocp-Apim-Subscription-Key' : subscriptionKey
    }
};

request.post(options, (error, response, body) => {
  if (error) {
    console.log('Error: ', error);
    return;
  }
  let jsonResponse = JSON.stringify(JSON.parse(body), null, '  ');
  console.log('JSON Response\n');
  console.log(jsonResponse);
});

我对此进行了尝试并让以下代码正常工作,实际上您已经非常接近让它运行了。主要是将 Buffer 对象传递到 POST 请求的 body 字段,并指定正确的内容类型标头。

'use strict';

const request = require('request');
const fs = require("fs");

// Replace <Subscription Key> with your valid subscription key.
const subscriptionKey = <Subscription Key> ;

const uriBase = 'https://westcentralus.api.cognitive.microsoft.com/face/v1.0/detect';

const imageBuffer = fs.readFileSync('image.jpg');

// Request parameters.
const params = {
    'returnFaceId': 'true',
    'returnFaceLandmarks': 'false',
    'returnFaceAttributes': 'age,gender,headPose,smile,facialHair,glasses,' +
        'emotion,hair,makeup,occlusion,accessories,blur,exposure,noise'
};

const options = {
    uri: uriBase,
    qs: params,
    body: imageBuffer,
    headers: {
        'Content-Type': 'application/octet-stream',
        'Ocp-Apim-Subscription-Key' : subscriptionKey
    }
};

request.post(options, (error, response, body) => {
    if (error) {
        console.log('Error: ', error);
        return;
    }
    let jsonResponse = JSON.stringify(JSON.parse(body), null, '  ');
    console.log('JSON Response\n');
    console.log(jsonResponse);
});
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 Nodejs 面对 api 的相关文章

  • 如何将 Angular Universal 应用程序部署到 Node.js 生产服务器?

    我有一个带有 Universal 的 Angular 8 应用程序 我想将其部署到共享 Web 主机生产服务器 我提前与网络主机核实过 他们告诉我可以在他们的共享网络托管上托管 Angular 通用网络应用程序 但是 无论我做什么 我都无法
  • Express.js 中的自定义回调 get

    我的 app js 中有一个 get app get api personnel api personnel 调用此函数作为回调以从 mongo 加载一些数据 exports personnel function req res var d
  • 如何在 Azure 管道上运行 Karate API 测试

    空手道和 Azure 新手 刚刚使用空手道创建了一些 API 测试 而且很简单 想要进一步添加 Azure 管道 找到了一些仅指向添加 Microsoft 的 pom xml 和 maven 的链接 还发现了 Jekins 集成 但没有适用
  • 无法在 python 3.8 上将带有 webapp 的 python 部署到 azure

    我正在尝试使用部署一个测试项目Flask使用以下方法将框架迁移到 Azure 云中Azure CLI https learn microsoft com en us azure app service containers quicksta
  • 发布 Azure Webjob 时出现计划错误

    我在从 VS 2013 发布带有时间表的 Web 作业时遇到问题 我可以毫无问题地发布 按需 作业 但我希望它带有时间表 这是我在下面遇到的错误 发布时似乎找不到 Microsoft Web WebJobs Publish Tasks Cr
  • 如何使用socket.io发送图像文件(二进制数据)?

    我无法从以下位置发送数据Android Client to NodeJS Server I use Socket IO 客户端 https github com socketio socket io client java我的客户端中的ja
  • ExpressJS 将变量传递给 JavaScript

    我对此完全迷失了 我正在使用 NodeJS 获取 JSON 我需要将变量传递到我的页面并让 JavaScript 使用数据 app get test function req res res render testPage myVar My
  • Dialogflow 简单的授权方法

    是否存在将 Dialogflow 代理连接到的简单方法node js代码 当我将此代码与从 Dialogflow 代理的设置页面获取的正确项目 ID 一起使用时 出现以下错误 错误 获取应用程序默认凭据时出现意外错误 无法加载默认凭据 浏览
  • 如何修复 MongoClient is not a constructor 错误

    我刚刚学习 JavaScript 和 Nodejs 根据我在网上找到的一些代码 我编写了以下应用程序 当我尝试运行它时 我在第 9 行收到错误 其中显示 new MongoClient 错误提示 MongoClient 不是构造函数 您能解
  • 如何在express中设置单个会话maxAge?

    据我了解 您可以在启动应用程序时设置 maxAge 如下所示 connect session secret keyboard cat cookie maxAge 60000 但是 我想实现一些类似于 记住我 设置的东西 我该怎么做呢 多谢
  • 如何对 NestJS 中的控制器应用防护进行单元测试?

    我在 NestJS 中配置了一个控制器 我想检查是否设置了适当的防护 有人有如何完成此操作的示例吗 这个 删节的 示例作为一个应用程序可以正常工作 所以我只是在测试指导之后 您会注意到在用户测试中有一些我正在调用的测试Reflect get
  • 如何使用 Node.js 解析 JSON? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我应该如何使用 Node js 解析 JSON 是否有一些模块可以安全地验证和解析 JSON 你可以简单地使用JSON parse h
  • 如何从 Function App 设置会话 ID 或创建自定义字段到 Application Insights

    功能应用程序如下 public static async Task
  • AWS Lambda 上的 NodeJS 集群

    是否可以在 lambda 函数中使用 cluster 模块 我试过这个 use strict var cluster require cluster var http require http var os require os var n
  • 阻止 Mongoose 为子文档数组项创建 _id 属性

    如果您有子文档数组 Mongoose 会自动为每个子文档创建 id 例子 id mainId subDocArray id unwantedId field value id unwantedId field value 有没有办法告诉 M
  • Node.js 中的 webRTC

    我想在node js 中使用webRTC 来管理涉及浏览器和nodejs 上的对等点的混合连接 我做了一些测试和搜索 我尝试使用wrtc https github com js platform node webrtc or webrtc
  • 如何向 node-http-proxy 响应添加标头

    我需要在第三方服务上解决CORS 所以我想构建一个代理来添加标头 Access Control Allow Origin 为什么这段代码没有添加标题 httpProxy require http proxy var URL https th
  • Azure AD B2C 中的自定义 SAML iDP 是否支持 iDP 发起的 SSO?

    我正在努力添加自定义 SAML 2 0 身份提供商 Okta 以与我的 B2C 租户一起使用 我已经配置了它 当我从我的应用程序启动登录时 它工作得很好 但是 当我从身份提供商 Okta 启动登录时 它无法登录 第一次尝试时 我从 B2C
  • NodeJS 无法加载 css 文件

    所以我正在尝试制作一个 NodeJS 服务器 并且我尝试保留尽可能少的附加组件 但是 我遇到了一个问题 我似乎无法加载任何内容CSS我调用的文件HTML文件 该调用似乎确实由服务器处理 但它不会显示在浏览器中 My 网络服务器 js fil
  • Node.js 中的 Twilio 短信回复

    我正在使用 node js 中的 twilio 编写移动通知系统 目前可以向用户发送短信 但我希望用户能够回复我 我需要收集用户发送文本的电话号码以及消息的内容 以查询我的 mongoosedb 我找不到太多这方面的信息 因此非常感谢您的帮

随机推荐

  • 将“ngModelOptions”从自定义组件传递到包含的本机元素

    我有一个名为的自定义组件 Angular 6 ppo currency field使用以下模板 span class display formattedValue span
  • 带有文件扩展名的 ASP.NET MVC 路径

    在使用基于属性的路由的 ASP NET MVC5 中 我想处理带有文件扩展名的 URL 例如 javascript security js 下面是一个控制器操作方法示例 Route javascript security js public
  • 静态函数/变量

    我刚刚开始用 C 编程 这个静态变量 函数的概念对我来说并不清楚 为什么要使用它 还有其他替代方案吗 static 可能会有点令人困惑 因为它的含义根据使用位置的不同而略有不同 全局声明的静态变量仅在该源文件中可见 本地声明的静态变量将在对
  • 多个 Django 存储后端系统

    我有一个 django 应用程序 它使用 S3BotoStorage 后端在 Amazon s3 上存储上传的文件 但在 Web api 服务 使用 django tastypie 中 在 s3 上上传文件需要很长时间 因为有请求通过 We
  • C++ 中最短的程序

    我最近遇到了这段可以编译但运行时出现分段错误 g 的代码 这是来自 topcoder 的原始链接 include
  • PHP中如何获取一个句子的第一个单词?

    我想从字符串中提取变量的第一个单词 例如 采用以下输入 结果输出应该是Test 这是输入的第一个单词 我怎样才能做到这一点 有一个字符串函数 strtok http php net strtok 可用于将字符串拆分为更小的字符串 token
  • Javascript - 使用 forEach 向后循环数组

    有没有办法使用向后循环数组forEach 不是任何其他类型的循环 我知道如何使用 for 标准方式 并且没有实际反转数组本身 let arr 1 2 3 arr slice reverse forEach x gt console log
  • 如何避免 http://static.ak.facebook.com/connect/xd_arbiter.php 的链接无限期挂起[关闭]

    Closed 这个问题需要调试细节 help minimal reproducible example 目前不接受答案 我们在我们的网站上使用 Facebook 评论和 Facebook Like 按钮 这些以某种方式生成一个调用http
  • 在序列化器 django 中使用分页

    我正在开发一个 django 项目 在该项目中我试图获取所有具有update ts场大于product sync ts from Product一次从服务器获取表 但由于产品数量很大 这需要大量时间来获取所有数据 我还将当前时间戳与数据一起
  • 如何使用 IComparable 之类的方法自然地对 DataView 进行排序

    我的 DataView 表现得很有趣 它按字母顺序对事物进行排序 而我需要它按数字对事物进行排序 我在整个网络上查找了这个问题 发现了很多关于如何使用 ICompare 对其进行排序的想法 但没有什么真正可靠的 所以我的问题是 如何在 Da
  • 如何在 Jetpack Compose 中用 TextField 替换部分文本?

    例如我有这个 TAKE O take those lips away That so sweetly were forsworn And those eyes the break of day Lights that do mislead
  • 在 RSpec 中测试模块

    在 RSpec 中测试模块的最佳实践是什么 我有一些模块包含在几个模型中 现在我只是对每个模型进行重复测试 几乎没有差异 有办法把它弄干吗 拉德方式 gt let dummy class Class new include ModuleTo
  • FilterOutputStream 的用法

    实际用途是什么FilterOutputStream在Java中 来自javadoc 该类是所有过滤输出流的类的超类 这些流位于已存在的输出流 底层输出流 之上 它用作基本数据接收器 但可能会沿途转换数据或提供附加功能 对我来说 它似乎有相同
  • contentpresenter.content 上的数据触发不起作用

    我正在尝试基于数据触发器切换 contentpresenter 的内容 我想在 contentpresenter content 中显示用户控件 如果我设置了值 否则我需要显示错误消息 但是我的 datatrigger 上的绑定失败指出未找
  • 动态文本框jquery焦点

    我正在创建一个输入类型的动态文本框 如下所示 代码 我无法将焦点设置在输入类型上 var elem document createElement input elem type text elem id txtParent elem set
  • Ember.js数据如何清除数据存储

    我正在尝试 Ember js 并设置了一个小应用程序 用户可以在其中登录和注销 当用户注销时 我想清除数据存储中当前缓存的所有记录 有没有办法做到这一点 或者我必须强制浏览器重新加载页面 我知道这个问题来自 2013 年 但是自从 Embe
  • 如何提高Python 3.6中的SQLite插入性能?

    背景 我想使用 Python 向 SQLite 插入 100 万条记录 我尝试了很多方法来改进它 但仍然不太满意 数据库使用 0 23 秒将文件加载到内存 搜索pass如下 但 SQLite 加载并插入文件需要 1 77 秒 环境 英特尔酷
  • SoundCloud API v3 Stream 在 Chrome 中无法工作

    几个月来我一直试图让它发挥作用 但仍然不起作用 它在除 Google Chrome 之外的所有浏览器中都能正常工作 问题是音频无法在 Chrome 中传输 这是一个最基本的 JS 小提琴示例 https jsfiddle net sq23u
  • ExtJS 4 应用程序登录和身份验证及权限

    我正在使用新推荐的应用程序结构在 Ext JS 4 上开发一个 Web 应用程序 因此我需要实施一个身份验证和权限系统 到目前为止的想法 服务器负责保证用户的角色和权限 ExtJS前端必须根据权限和角色进行更改 我使用卡片布局 第一个选项卡
  • 使用 Nodejs 面对 api

    我正在使用使用 Node js 的 Azure Face api 下面是代码 然而 我想使用本地图像并发布它 而不是托管一些图像 我尝试了不同的选项 但它无法识别图像格式或无效的图像网址 以下是我尝试过的事情 1 var stream fs