小编tuk*_*kan的帖子

Web API OData-ODataMediaTypeFormatter MediaTypeResolver不再存在

Web API OData v7。我正在为CSV,Excel等编写自定义格式器。我不知道如何将自定义格式器(ODataMediaTypeFormatter)指向自定义类,以在其中修改输出。

CustomFormatter:ODataMediaTypeFormatter-具有MessageWriterSettings.MediaTypeResolver,在7版中不再存在

调试时,进入GetPerRequestFormatterInstance,然后它死于A。找不到与响应的内容类型匹配的受支持的MIME类型。

我无法弄清楚流程-如何将其绑定到我的自定义(ODataWriter)编写器(csv或我想创建的任何内容)。

例如,从git的示例中:

public class CustomFormatter : ODataMediaTypeFormatter
{
    private readonly string csvMime = ;

    public CustomFormatter(params ODataPayloadKind[] kinds)
        : base(kinds) {
        //----no longer exists in 7
        //MessageWriterSettings.MediaTypeResolver = new MixResolver();

        SupportedEncodings.Add(Encoding.UTF8);
        SupportedEncodings.Add(new UTF8Encoding(encoderShouldEmitUTF8Identifier: false));
        SupportedMediaTypes.Add(new MediaTypeHeaderValue("text/csv"));            
    }
}

public class MixResolver : ODataMediaTypeResolver
{
    public override IEnumerable<ODataMediaTypeFormat> GetMediaTypeFormats(ODataPayloadKind payloadKind)
    {
        if (payloadKind == ODataPayloadKind.Resource || payloadKind == ODataPayloadKind.ResourceSet)
        {
            return CsvMediaTypeResolver.Instance.GetMediaTypeFormats(payloadKind);
        }
        return base.GetMediaTypeFormats(payloadKind);
    }
}

public class …
Run Code Online (Sandbox Code Playgroud)

c# odata asp.net-web-api asp.net-web-api-odata asp.net-web-api2

12
推荐指数
1
解决办法
445
查看次数

Smalltalk:“&amp;”和“and:”有什么区别

我刚在大学开始学习 Smalltalk。

我想知道消息&和之间的区别and:(就像|or:

smalltalk pharo

12
推荐指数
2
解决办法
606
查看次数

如何修复 Mac M1 上的“1 个泄漏的信号量对象需要在关机时清理”错误

我使用的是苹果Mac M1:

OS: MacOS Monterey

Python 3.9.13
Run Code Online (Sandbox Code Playgroud)

我想使用实现语义搜索SentenceTransformer

这是我的代码:

from sentence_transformers import SentenceTransformer
import faiss
from pprint import pprint
import time

import pandas as pd
import numpy as np

import matplotlib.pyplot as plt
import seaborn as sns

 

def load_index():
    index = faiss.read_index("movie_plot.index")
    return index


def fetch_movie_info(dataframe_idx):
    info = df.iloc[dataframe_idx]
    meta_dict = dict()
    meta_dict['Title'] = info['Title']
    meta_dict['Plot'] = info['Plot'][:500]
    return meta_dict
    
def search(query, top_k, index, model):
    print("starting search!")
    t=time.time()
    query_vector = model.encode([query])
    top_k = index.search(query_vector, top_k)
    print('>>>> Results in …
Run Code Online (Sandbox Code Playgroud)

python

11
推荐指数
1
解决办法
1万
查看次数

rbenv,捆绑者,独角兽问题

我在我的ruby应用程序环境中使用rbenv和bundler.

我的'捆绑秀':

bundle show
Gems included by the bundle:
  * activemodel (3.2.13)
  * activerecord (3.2.13)
  * activesupport (3.2.13)
  * addressable (2.3.4)
  * arel (3.0.2)
  * bcrypt-ruby (3.0.1)
  * builder (3.0.4)
  * bundler (1.16.2)
  * erubis (2.7.0)
  * eventmachine (1.0.3)
  * faraday (0.8.7)
  * haml (4.0.2)
  * haml-contrib (1.0.0)
  * hashie (1.2.0)
  * hipchat (1.0.1)
  * hiredis (0.4.5)
  * httparty (0.11.0)
  * i18n (0.6.1)
  * json (1.7.7)
  * kgio (2.8.0)
  * maruku (0.6.1)
  * multi_json (1.9.0)
  * multi_xml (0.5.5)
  * multipart-post …
Run Code Online (Sandbox Code Playgroud)

ruby unicorn bundler rbenv

10
推荐指数
1
解决办法
218
查看次数

使用SCH_CRED_FORMAT_CERT_HASH时,AcquireCredentialsHandle在内核模式下失败

我叫AcquireCredentialsHandle在内核驱动程序,传递SCHANNEL_CREDdwCredFormat设置为SCH_CRED_FORMAT_CERT_HASH.它失败了SEC_E_NO_CREDENTIALS.这是我的代码:

BYTE certHashBytes[20] = { 0x6d,0x64,0xed,0x56,0xd2,0x94,0x15,0xf4,0x49,0x08,0xaf,0x18,0xf1,0xca,0xf5,0xa2,0xc8,0x01,0x20,0x96 };
CredHandle credHandle;
RtlZeroMemory(&credHandle, sizeof(CredHandle));

SCHANNEL_CRED schannelCred;
RtlZeroMemory(&schannelCred, sizeof(SCHANNEL_CRED));
schannelCred.dwVersion = 4;
schannelCred.cCreds = 1;
schannelCred.paCred = certHashBytes;
schannelCred.dwCredFormat = 1;

UNICODE_STRING unispName;
RtlUnicodeStringInit(&unispName, L"Microsoft Unified Security Protocol Provider");
TimeStamp ts;

SECURITY_STATUS res = AcquireCredentialsHandle(NULL, &unispName, SECPKG_CRED_INBOUND, NULL, &schannelCred, NULL, NULL, &credHandle, &ts);
DbgPrintEx(DPFLTR_IHVNETWORK_ID, DPFLTR_INFO_LEVEL, "AcquireCredentialsHandle %x\n", res);
Run Code Online (Sandbox Code Playgroud)

我的证书哈希肯定是正确的,并且在MY商店中正确安装,用于用户帐户和本地计算机.我知道这是因为它在用户模式下工作正常,如下所示:

HCERTSTORE certStore = CertOpenSystemStore(NULL, L"MY");
BYTE certHashBytes[20] = { 0x6d,0x64,0xed,0x56,0xd2,0x94,0x15,0xf4,0x49,0x08,0xaf,0x18,0xf1,0xca,0xf5,0xa2,0xc8,0x01,0x20,0x96 };
CERT_NAME_BLOB certHash { 20, …
Run Code Online (Sandbox Code Playgroud)

c c++ schannel wdk kmdf

8
推荐指数
1
解决办法
257
查看次数

我应该如何精确编码Unix时间?

我之所以遇到这种情况,是因为我正在跨多个平台使用时间,并且似乎它们在系统中实现和/或处理unix时间的方式彼此都有些不同。这样的问题。

引用Unix Time上的Wikipedia页面

Unix没有将非整数Unix时间数直接表示为二进制分数的传统。取而代之的是,使用包含两个整数的复合数据类型来表示亚秒精度的时间,第一个是time_t(Unix时间的整数部分),第二个是时间数的分数部分(以百万分之一为单位) struct timeval)或十亿分之一(在struct timespec中)。这些结构提供了基于十进制的定点数据格式,该格式对某些应用程序很有用,而对于其他应用程序则很容易转换。

这似乎是Go(UnixNano)中的实现。但是,实际上,有许多使用毫秒(Java?)的语言/平台,并且某些平台使用Float(试图保持一定的精度),而其他平台则主要使用Int。


因此,如果我正在实现一种传输格式,而我只能使用64位来存储时间值,而没有更多的话,我的问题有两个:

  • 我应该将其编码为整数还是浮点值?和
  • 我应该使用秒,毫秒还是纳秒精度?

主要目标是尝试在尽可能多的语言和平台上尽可能地准确(当然,在每个平台上都不必诉诸自定义代码)。


ps:我知道这有点主观,但我相信仍然有可能做出一个很好的,客观的答案。如果不是这种情况,请随时关闭。

unix-timestamp

7
推荐指数
2
解决办法
327
查看次数

通过API和ruby创建优惠券会返回错误:woocommerce_api_missing_coupon_data

我正在尝试使用此页面文档中的示例代码通过Rails 4应用程序中的其余api创建优惠券:https : //woocommerce.github.io/woocommerce-rest-api-docs/?ruby#create-优惠券

这是我正在使用的代码:

 data = {
      code: "10off",
      discount_type: "percent",
      amount: "10",
      individual_use: true,
      exclude_sale_items: true,
      minimum_amount: "100.00"
    }
woocommerce.post("coupons", data).parsed_response
Run Code Online (Sandbox Code Playgroud)

我希望它从API返回成功的响应,而不是 {"errors"=>[{"code"=>"woocommerce_api_missing_coupon_data", "message"=>"No coupon data specified to create coupon"}]}

ruby woocommerce ruby-on-rails-4 wordpress-rest-api woocommerce-rest-api

7
推荐指数
1
解决办法
127
查看次数

Errno::ENOTTY 尝试将文件发送到 SFTP 时设备的 ioctl 不合适

我正在使用 Rails Web 应用程序并尝试使用以下脚本将 xml 文件发送到 sftp 服务器:

Net::SSH.start(SFTP_HOST, sftp_user, {:port => SFTP_PORT, :password => sftp_password}) do |ssh|
ssh.sftp.connect do |sftp|
  sftp.upload!( measurements_xml_file_path( meas ).to_s ) do |event, uploader, *args|
    case even
    when :open
      puts "Starting upload"

    when :finish
      puts "Finished upload"
      return true
    end
  end
end
Run Code Online (Sandbox Code Playgroud)

尽管如此,我总是收到错误"Errno::ENOTTY ... Inappropriate ioctl for device"。有帮助如何修复此错误吗?

ssh sftp ioctl ruby-on-rails

7
推荐指数
1
解决办法
1878
查看次数

如何在 SQL Server 2016 中使用 OPENJSON 在 Json 中读取带有空格的字段名称

我怎样才能在该字段名称读取JSON文件值包含使用空间OPENJSONSQL服务器2016。请参阅以下代码:

DECLARE @json NVARCHAR(MAX)
SET @json = N'{ "full name" : "Jayesh Tank"}';
SELECT * FROM OPENJSON(@json) WITH ( [name] [varchar](60) '$.full name')
Run Code Online (Sandbox Code Playgroud)

该空间中的另一个示例代码位于字段名称之后。

SET @json = N'{ "name   " : "abc"}';
SELECT * FROM OPENJSON(@json) WITH ( [name] [varchar](60)    '$.name')
Run Code Online (Sandbox Code Playgroud)

'$.name' 将返回空值。有没有办法读取这个值?

t-sql json sql-server-2016

6
推荐指数
1
解决办法
4181
查看次数

寻找编程语言,您可以在"调试器"中编写代码

我曾经使用Smalltalk进行开发,它完全是交互式的,你可以在任何浏览器(包括调试器)中更改代码,并且更改在应用程序中立即生效(无需重启或任何操作).我的问题是,是否还有其他语言.除了Self之外我什么都不知道,但是我害怕自我真的死了.

Java有热代码替换,只能部分工作(只要公共方法不会改变).JRebel让它变得更好.但我正在寻找一种支持交互式开发的语言,如Smalltalk.注意,我不是指REPL.REPL仍然与应用程序分离,因此REPL中执行的内容在应用程序中不会像交互式编程语言或开发环境那样立即生效.

programming-languages smalltalk interactive

6
推荐指数
2
解决办法
184
查看次数